0

我正在構建一個將作爲信息亭運行的Chrome應用程序。我遇到的問題是,Chrome應用程序喜歡成爲「單一」頁面,因此加載不同的內容並不像鏈接到其他頁面那麼簡單。我所做的是用jQuery​​加載我的頁面。我現在遇到的探針是,每個頁面都有一些使用JPlayer插件的HTML5視頻。在這些頁面上,我有一些內聯js可以讓視頻播放器工作。但是,內聯JS在Chrome應用程序中是不可以的(UGH!)。有沒有一種方法可以在我點擊某些內容時動態地將JavaScript加載到我的應用中? Rgiht現在我有這樣的事情..如何以編程方式在Chrome應用中加載JavaScript?

$(".video_list a").click(function(){ 
    $(".screen").load("video.html", function(){ 
     $.getScript("video.js"); 
    }); 
}); 

video.js將包含JPlayer設置來創建視頻播放器。當我將其作爲瀏覽器中的常規網頁運行時,它可以正常工作,但是當它的Chrome應用程序無法正常工作時,我不會遇到任何錯誤,只需在視頻應該顯示的位置顯示空格。

回答

0

你不能這樣做,因爲它是再次嵌入代碼 - getScript加載腳本作爲文本,然後eval s它。

要解決它,你可以插入腳本作爲<script src="...">標籤:

function loadScript(name) { 
    var s = document.createElement('script'); 
    s.src = chrome.runtime.getURL(name); 
    s.onload = function() { 
    this.parentNode.removeChild(this); 
    }; 
    (document.head||document.documentElement).appendChild(s); 
} 
+0

這是完美的。謝謝! – Dustin

相關問題