向div元素添加脚本标记并加载代码

时间:2016-06-24 10:24:31

标签: javascript html dom

好的,这是我遇到的问题。我找到了100个类似的线程,但没有一个能解决这个问题。

我有一个 < div id="ad_space_id">< /div> 元素。 我想要做的是为该div添加一个脚本标记。我做的是:

src = https://ad.doubleclick.net/ddm/adj/N378.150781.4704472308521/B5632202.128522416;sz=300x250;ord=[timestamp];dc_lat=;dc_rdid=;tag_for_child_directed_treatment=?

var adScript = document.createElement('script');
adScript.type = 'text/javascript';
adScript.setAttribute('src', src);
document.getElementById(adDivId).appendChild(adScript);

这一切都应该动态完成,即在加载页面之后。 src我从XMLHttpRequest获得。

当我查看html输出时,一切看起来都很好:

<div id="ad_space_1"><script type="text/javascript"
 src="https://ad.doubleclick.net/ddm/adj/N378.150781.4704472308521/B5632202.128522416;sz=300x250;ord= [timestamp];dc_lat=;dc_rdid=;tag_for_child_directed_treatment=?"></script>

</div>)

我的问题是,代码没有执行。 (如果我将该代码粘贴到html文件中并在浏览器中加载它可以正常工作)。

请有人帮忙吗?!?

1 个答案:

答案 0 :(得分:0)

由于脚本标记位于元素

内,因此无法执行

您需要了解有关DOM(文档对象模型)如何加载以及如何加载javascript的更多信息

当您尝试执行javascript时,您的Div还没有准备好。

你应该在本教程中观看视频6和7,它解释了很多javascript加载和你放置脚本代码的重要性:

https://www.youtube.com/watch?v=GeOSQcmLAtw&index=6&list=PL6n9fhu94yhUA99nOsJkKXBqokT3MBK0b

为了确保在DOM中加载div,你需要在Html之前(上面)放置它,脚本函数应该放在结束体标记之前,这样DOM就可以让脚本代码与之交互了它

<div id="ad_space_id"></div>

<script type="text/javascript">
    // function call to do something with the div
</script>