我通过adspeed.com投放广告我希望每次点击标签链接时都会刷新我们的富文本(推荐)广告。单击链接时是否可以重新加载脚本?目前,脚本只是放在div中,并在页面加载时执行。
div id="quoteContain">
<!-- AdSpeed.com Serving Code XXX for [Zone] XXX -->
<script type="text/javascript" src="http://g.adspeed.net/ad.php?do=XXX&wd=200&ht=600&target=_top"></script>
<noscript><iframe width="200" height="600" src="http://g.adspeed.net/ad.php?do=XXX&wd=200&ht=600&target=_top" frameborder="0" scrolling="no" >
<a href="http://g.adspeed.net/ad.php?do=XXX&wd=200&ht=600&pair=as" target="_top"><img style="border:0px;" src="http://g.adspeed.net/ad.php?do=img&zid=XXX&wd=200&ht=600&pair=as" alt="i" width="200" height="600"/></a></iframe>
</noscript><!-- AdSpeed.com End -->
<!-- /quoteContain --></div>
我一直试图从div中删除脚本并每次加载都没有成功
$("ul#flowtabs li a").click(function(){
$("#quoteContain").load("http://link?params");
)};
答案 0 :(得分:2)
那是Same Origin Policy给你的地狱。基本上,它阻止您使用XHR从其他域访问资源。我建议你阅读链接网站。
一种可能的解决方法是创建一个简单的代理来获取所需的脚本,并根据请求将其注入页面。
答案 1 :(得分:1)
每次重新加载页面时,都会重新加载页面的所有资源。这是设计的。浏览器的作用是“缓存”结果,试图为您提供更好的响应时间。否则,您必须等待加载每个资源。当logo经常是250k而javascript包含另外250k然后CSS文件是50k时,突然间事情开始堆积起来,而你只是为了向你显示价值5万美元的文本,你会看到每页一兆或更多。好吧,在您看到页面之前,它会变成接近一两秒的加载。
您需要做的是在返回的脚本上配置标头以强制执行无缓存,或者您需要确保每个请求在末尾都包含一个随机字符串,以使其看起来正在请求新资源。
ajax文档上的脚本注入标记也是如此。浏览器将缓存它的内容。