我想知道为什么广告仍然使用document.write方法将add插入到页面中
<script language="javascript" type="text/javascript">
document.write("<script type='text/javascript' src='http://addomain/someadd.js'><\/sc" + "ript>");
</script>
为什么我不能直接把
<script type='text/javascript' src='http://addomain/someadd.js'></script>
来代替广告吗?
发布于 2011-05-06 10:02:53
传统的脚本标记会在页面加载和执行时阻塞页面。使用document.write加载的脚本将异步工作。这就是为什么你会在广告或分析中看到这一点,因为这样的脚本不会直接影响页面内容。
发布于 2009-08-28 21:09:10
我在一家网络广告公司工作,据我所知,某些浏览器(不知道是哪种浏览器)允许你将脚本标签放入页面,但不允许你自动执行它们的内容。
因此,要实现这一点,您需要将脚本标记拆分,以便浏览器不会将其视为脚本标记,而是将其视为任何旧的HTML数据。然后,当DOM被串行处理时,在写出脚本标记之后,它计算的下一件事是...嘿,你刚写的脚本标签。
在这一点上,脚本标记被计算并执行。
发布于 2009-09-23 16:52:31
通常,这些document.write注入脚本会附加动态字符串,以脱离缓存,或者将客户端的一些信息发送到广告服务器。我怀疑您的示例是这样开始的
document.write("<script type='text/javascript' src='http://addomain/someadd.js?"+extrastuff+"'><\/sc" + "ript>");
但随着时间的推移被调整了,或者被一些不理解额外内容的人复制和修改。但正如你所写的,没有区别:你在问题中引用的两种方式在功能上是相同的。
https://stackoverflow.com/questions/556322
复制相似问题