繁体   English   中英

异步加载 Javascript

[英]Load Javascript Asynchronously

我将这个 java 脚本插入到我的侧边栏中。 它适用于 350x200 的广告横幅。

<SCRIPT language="Javascript">
var cpmstar_rnd=Math.round(Math.random()*999999);
var cpmstar_pid=14214;
document.writeln("<SCR"+"IPT language='Javascript' src='http://server.cpmstar.com/view.aspx?poolid="+cpmstar_pid+"&script=1&rnd="+cpmstar_rnd+"'></SCR"+"IPT>");
</SCRIPT>

^ ^ 这是我的广告网络给我的 java 脚本,我无法编辑

我想尽可能快地加载此广告横幅,而不会妨碍我网站的 rest。

目前,我所做的是将这个广告代码放在一个空白的 html 页面上,然后在我的侧边栏上使用 IFRAME 调用该 html 页面。 我听说 IFrame 是异步加载的。

有没有更好的方法可以使用?

如果您关心的是实际问题而不是学术问题,请提前使用 go 并使用 iframe。 iframe 本质上是嵌入式 window,因此确实是异步加载的。

您也可以使用 Ajax 加载脚本,但阻力最小的路径是使用 iframe (再次,假设您更关心让它工作而不是确保您的网站验证 - 如果您的文档类型是 XHTML Strict并且您将内容作为 XML 提供,您不应该使用 iframe,但我有预感您没有这样做)。

首先更新您的代码

<script language="Javascript" type='text/javascript'>
var cpmstar_rnd=Math.round(Math.random()*999999);
var cpmstar_pid=14214;
document.writeln("<scr"+"ipt language='Javascript' src='http://server.cpmstar.com/view.aspx?poolid="+cpmstar_pid+"&script=1&rnd="+cpmstar_rnd+"'></scr"+"ipt>");
</script>

iframe 异步加载,但即使它们没有加载,在您的页面中嵌入不受信任的外部脚本也是一个巨大的安全漏洞,因此最好使用 iframe(如果可能,使用不同的域)。

除此之外,由于额外的页面请求,iframe 可能比通过 ajax 加载的异步脚本稍慢,但维护起来要简单得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM