首页 新闻 会员 周边 捐助

JS中setTimeout()延迟加载JS文件问题

0
悬赏园豆:10 [已解决问题] 解决于 2012-05-29 22:40
<div id="vodid1">正在加载...</div>  //广告位置,想延迟加载
<div id="vodid1_s" style="display:none;"><script>JS代码,想加载的</script></div>
<script>
function lazyjs(jsname){
document.getElementById(jsname).innerHTML= document.getElementById(jsname+'_s').innerHTML;
}
setTimeout("lazy('vodid1')",3000);//延时3秒
document.getElementById('vodid1').innerHTML="";
</script>

以上是我想出来的延迟加载JS文件的方法,但是问题就是网页刷新后<div id="vodid1">正在加载...</div>  这里一直是'正在加载...',而不是想要的显示广告内容,不知道为什么

xerfect的主页 xerfect | 初学一级 | 园豆:193
提问于:2012-05-27 19:12
< >
分享
最佳答案
0

setTimeout("lazy('vodid1')",3000);   这里错误

 

 参数只接受方法名

收获园豆:7
┢┦偉 | 小虾三级 |园豆:1240 | 2012-05-28 19:16

var 变量名=function
lazyjs(jsname){ document.getElementById(jsname).innerHTML= document.getElementById(jsname+'_s').innerHTML; }
变量名=
lazy('vodid1')
setTimeout(变量,3000);//延时3秒


这样就可以解决你的那个错误了
┢┦偉 | 园豆:1240 (小虾三级) | 2012-05-28 19:19

@┢┦偉: 恩,谢谢,知道了!

xerfect | 园豆:193 (初学一级) | 2012-05-29 22:40

@xerfect: 恩!

┢┦偉 | 园豆:1240 (小虾三级) | 2012-05-29 22:42
其他回答(1)
0

你的代码有问题,给你个DEMO:

<div id="vodid1">正在加载...</div>  //广告位置,想延迟加载
    <script type="text/javascript">
        var html="<img src='http://static.cnblogs.com/images/logo_small.gif'/>";
        setTimeout("document.getElementById('vodid1').innerHTML=html",3000);//延时3秒
    </script>

在线运行效果:http://jscode.chinacxy.com/code/3afbd259f98ad7844b0dccc88b268c86.aspx

收获园豆:3
artwl | 园豆:16736 (专家六级) | 2012-05-27 19:46

请问问题在哪呢?我一直搞不明白

支持(0) 反对(0) xerfect | 园豆:193 (初学一级) | 2012-05-28 12:04

@xerfect: 

setTimeout("lazy('vodid1')",3000);

这里应该是lazyjs吧

支持(0) 反对(0) artwl | 园豆:16736 (专家六级) | 2012-05-28 12:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册