3

说吧。。

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

我知道通过使用 DOM,我可以将“Bieber”复制到任何地方。

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

..但是当我想将 DOM 脚本插入到下面的脚本中时,id 似乎不起作用。有什么办法可以将“比伯”放入下面的脚本中?

<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>
4

1 回答 1

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>部分。如果没有,您可以改为附加到正文。

于 2013-02-14T12:11:27.837 回答