2013-02-14 58 views
3

讓說..如何獲得內部跨度的文字,並用它爲其它腳本

<span id="Singer">Bieber</span> 

我知道通過使用DOM我可以複製「比伯」隨時隨地..

<script> 
x=document.getElementById("Singer");document.write("<span>" + x.innerHTML + "</span>");</script> 

。 。但是當我想將DOM腳本插入到下面的腳本中時,id似乎不起作用。有什麼方法可以將'Bieber'放入下面的腳本中?

<script language=JavaScript src="http://lyricfind.rotator.hadj7.adjuggler.net/servlet/ajrotator/275968/0/vj?z=lyricfind&dim=35518&click=&kw=<I WANT TO PUT BIEBER HERE>"></script> 
+0

我想它不可用在你想要得到它的時刻。你可以多一些你的代碼? – Mike 2013-02-14 12:05:31

+0

我只想發佈'bieber',並且被許可人要求我將自己的廣告腳本和我的bieber帖子一起發佈。但廣告腳本要求我每次都將歌手/藝術家姓名填入廣告腳本。因此,不是每次發帖都要手動填寫,我認爲將span id分配給帖子中的某些文本是很明智的,這樣廣告腳本中的「填充空白」就會自動填充。還是有其他簡單的方法來做到這一點? – Lagubestbest 2013-02-14 19:49:20

回答

0

您遇到的問題是瀏覽器在能夠訪問span元素之前將觸發腳本請求。它可以通過跨度被讀取後動態插入腳本標籤來完成:

window.onload = function(){ 

    var x = document.getElementById("Singer"); 

    var s = document.createElement("script"); 
    s.src = "http://lyricfind.rotator.hadj7.adjuggler.net/servlet/ajrotator/275968/0/vj?z=lyricfind&dim=35518&click=&kw=" + encodeURIComponent(x.innerHTML); 
    s.type = "text/javascript"; 

    document.getElementsByTagName("head")[0].appendChild(s); 

}; 

這裏假設你的頁面有一個<head>部分。否則,你可以追加到身體。

相關問題