2012-06-20 48 views
1

工作,我有這樣的jQuery代碼:腳本是不是裏面的jQuery

document.getElementById('geo_us').innerHTML = "<script type='text/javascript' src='http://www.101greatgoals.com/wp-content/themes/tutorial/js/gadout.js'></scr" + "ipt>"; 
$("#geo_us").append("<div id='div-gpt-ad-1335877669074-0' style='width:160px; height:600px;'></div>"); 
document.getElementById('div-gpt-ad-1335877669074-0').innerHTML = "<script type='text/javascript' src='http://www.101greatgoals.com/wp-content/themes/tutorial/js/gad.js'></scr" + "ipt>"; 

這是我得到的結果:外部JS的內容/代碼是不是有..

<div id="geo_us"> 
    <script src="http://www.101greatgoals.com/wp-content/themes/tutorial/js/gadout.js" type="text/javascript"> 
    </script> 
    <div style="width: 160px; height: 600px;" id="div-gpt-ad-1335877669074-0"> 
     <script src="http://www.101greatgoals.com/wp-content/themes/tutorial/js/gad.js" type="text/javascript"> 
     </script> 
    </div> 
</div> 

你知道代碼中出了什麼問題嗎?

謝謝。

+0

@ZenLikeThat我不知道目前使用的任何瀏覽器不支持'getElementById'與黑莓的可能的一般例外,也許Opera Mini的。 – Pointy

+1

你究竟想要做什麼?加載腳本或檢索內容? – Joey

回答

2

您不能使用innerHTML添加腳本標記,請使用append和document.create元素。你爲什麼要混合使用jQuery和普通的JavaScript。選一個。

var str = '<script src="http://www.101greatgoals.com/wp-content/themes/tutorial/js/gadout.js"></script><div style="width: 160px; height: 600px;" id="div-gpt-ad-1335877669074-0"><script src="http://www.101greatgoals.com/wp-content/themes/tutorial/js/gad.js"></script></div>'; 
jQuery("#geo_us").append(str); 
+0

爲什麼這是downvoted:X腳本添加innerHTML不執行 – Esailija

+0

我認爲有一種方式,除非你完全確定它。我看到人們對解決問題的建議發表評論,但並沒有爲我工作。 – user1341839

+0

@ user1341839只需使用jQuery的'.html()',它會明確地找到任何腳本標記並執行它們,因爲'.innerHTML'不會這樣做。 – Esailija

0

試試這個:

$('#geo_us').html("<script type='text/javascript' src='http://www.101greatgoals.com/wp-content/themes/tutorial/js/gadout.js'></scr" + "ipt>"); 

$("#geo_us").append($("<div id='div-gpt-ad-1335877669074-0' style='width:160px; height:600px;'></div>")); 

$('#div-gpt-ad-1335877669074-0').html("<script type='text/javascript' src='http://www.101greatgoals.com/wp-content/themes/tutorial/js/gad.js'></scr" + "ipt>"); 
+0

不適合我,但我找到了另一種方法:$('#geo_us')。load('tag160X600left.php');但它只適用於Chrome,而其他人則認爲谷歌沒有定義。 – user1341839