为了账号安全,请及时绑定邮箱和手机立即绑定

使用JavaScript执行特定延迟后的脚本

使用JavaScript执行特定延迟后的脚本

青春有我 2019-07-10 16:54:17
使用JavaScript执行特定延迟后的脚本有没有类似jQuery的JavaScript方法?delay()或wait()(将脚本的执行延迟一定的时间)?
查看完整描述

3 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

以下内容如下:

setTimeout(function, milliseconds);

函数,该函数可以在执行函数的时间之后传递。

见:窗户setTimeout()方法.


查看完整回答
反对 回复 2019-07-10
?
浮云间

TA贡献1829条经验 获得超4个赞

只是为了补充其他人说过的话setTimeout:如果将来要调用带有参数的函数,则需要设置一些匿名函数调用。

您需要传递函数作为参数,以便以后调用它。实际上,这意味着名字后面没有方括号。下面将立即调用警报,并显示“Hello world”:

var a = "world";setTimeout(alert("Hello " + a), 2000);

要解决这个问题,可以使用函数的名称(就像Flubba所做的那样),也可以使用匿名函数。如果需要传递参数,则必须使用匿名函数。

var a = "world";setTimeout(function(){alert("Hello " + a)}, 2000);a = "Stack Overflow";

但是,如果运行该代码,您将注意到2秒后弹出窗口将显示“HelloStack溢出”。这是因为变量a的值在这两秒钟内发生了变化。要让它在两秒钟后说“HelloWorld”,您需要使用以下代码片段:

function callback(a){
    return function(){
        alert("Hello " + a);
    }}var a = "world";setTimeout(callback(a), 2000);a = "Stack Overflow";

它将等待2秒,然后弹出“你好世界”。


查看完整回答
反对 回复 2019-07-10
?
米脂

TA贡献1836条经验 获得超3个赞

只是为了扩大一点.。可以直接在setTimeout打电话,但是@Patrick也就是说,您通常会分配一个回调函数,如下所示。时间是毫秒

setTimeout(func, 4000);function func() {
    alert('Do stuff here');}


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 582 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信