2013-10-28 86 views
1

這似乎是很簡單的前添加腳本,但我能理解,我懷念的東西:如何body元素

var string1 = document.createElement('script'); 
$(string1).attr('type', 'text/javascript'); 

$('body').before($(string1)); 

jQuery的版本2.0.3,它的作品完美,但我需要它的工作原理在1.8.3版本中。我錯在哪裏?由於

+2

將其添加到元素。 – fred02138

+0

body元素不允許作爲兄弟腳本元素。你爲什麼試圖把它放在那裏? – Quentin

+0

@Quentin:源代碼? –

回答

2

的調用

$('body').before($(string1)); 

實際上應該是

$('body').prepend($(string1)); 

這將添加腳本作爲身體的孩子,所有其他元素之前。

如果有替代before你的意思是,不是在身上,那麼它應該是

$('head').append($(string1)); 

其實作爲@Quentin在評論中說,script標籤不能直接html標籤去。

另請參閱prependbefore的文檔,因爲它們的含義完全不同。

0

body元素之前添加腳本是沒有意義的。這將導致無效的HTML。

您應該將其添加到head

$('head').append(string1); 

注意:命名變量時應該小心。 string1是誤導性的,因爲它沒有引用一個字符串,而是一個script元素。

相關問題