提问人:Zeeba 提问时间:3/18/2014 最后编辑:CommunityZeeba 更新时间:7/27/2023 访问量:44538
JavaScript setTimeout 5 秒
JavaScript setTimeout 5 seconds
问:
试图在 5 秒后加载 JS,我似乎无法让它工作;我在论坛上能找到的最接近的是setTimeout的问题setTimeout
我尝试的是:
<script type="text/javascript">
function()
{
var load = setTimeout(redirect, 5000);
redirect.src = src="js/load.js";
}
</script>
JavaScript 不是我最强的领域。
答:
14赞
Shadow Wizard Is Sad And Angry
3/18/2014
#1
假设您打算动态加载 JS 资源,这是执行此操作的方法。
首先,有这个:
<script type="text/javascript" id="redirect"></script>
和代码:
var load = setTimeout(function() {
document.getElementById("redirect").src="js/load.js";
}, 5000);
评论
0赞
Zeeba
3/18/2014
伙计,你太棒了!+1 可以肯定的是,我的代码离得太远了,我不敢相信你明白我想做什么!
0赞
Ian
3/18/2014
当您可以动态创建元素并将其设置为将其添加到页面时,为什么还要费心使用空的脚本元素呢?我很惊讶用脚本元素设置作品实际上有效src
src
1赞
Shadow Wizard Is Sad And Angry
3/18/2014
@Ian我的旧习惯,出于某种原因,我不喜欢将脚本元素注入头部或身体。我更愿意提前知道我得到了什么元素。
0赞
Ian
3/19/2014
@ShadowWizard 有趣的是,我从未见过使用它。同样有效
1赞
dzny
3/18/2014
#2
var myFunction = function(){
// your function stuff in here.
};
setTimeout(myFunction, 5000);
在这种情况下,该函数也与 setTimeout 分开使用。
-2赞
CMS
3/18/2014
#3
你必须创建一个循环函数来做你想要的。 喜欢这个:
(function myloop (i){
setTimeout(function(){
//HERE IS YOUR CODE DO WHAT YOU WANT
},5000)
})(i);
评论
50000
是。请改用。50 seconds
5000
redirect
redirect
应该是一个函数(或字符串,但不建议这样做)。它似乎是一个 DOM 元素。我建议你再读一遍文档。