2009-11-01 114 views
1

我需要動態地添加腳本引用頁面,所以我這樣做:添加腳本引用到使用jQuery

jQuery('html head').append("<script src='somesource.com/somejs.js'><\/script>") 

和簡化版,它的工作 - 我沒有得到任何錯誤,但我可以不執行該腳本中定義的任何方法。

任何想法我做錯了什麼?

回答

1

沒有看到上下文中的腳本,這是很難說,但可能包括:

  1. 你的URL錯誤(你有什麼似乎是域名,但在URI中沒有協議)
  2. 你正在嘗試使用這些函數,而不允許瀏覽器下載和運行腳本的時間(所以它們沒有在當時被定義你給他們打電話)
+0

您已經確定了其中一個問題 - 在我從該腳本調用方法之前,瀏覽器沒有足夠的時間下載腳本。 – Andrey 2009-11-02 04:38:48

-2

你需要一個類型= '文/ JavaScript的':

jQuery('html head').append("<script type='text/javascript' src='somesource.com/somejs.js'><\/script>") 
+1

儘管這在技術上是真實的(在HTML 4.x和XHTML 1.x中),瀏覽器錯誤中恢復,所以這不是故障的原因。 – Quentin 2009-11-01 21:54:42

+0

我測試過的所有現代瀏覽器都不在乎如何指定腳本類型。 – Andrey 2009-11-02 15:35:49

5

jQuery有一個getScript方法:

$(document).ready(function() { 
    $.getScript('somesource.com/somejs.js'); 
}); 
+0

$ .getScript在我的問題中做了很多我在做的事情,但是在一個較短的語句中,因此您得到了一個觀點:) – Andrey 2009-11-02 04:40:56