使用jQuery延迟JavaScript函数调用

前端之家收集整理的这篇文章主要介绍了使用jQuery延迟JavaScript函数调用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
JavaScript:
$(document).ready(function(){

    function sample() {
       alert("This is sample function");
    }

    $("#button").click(function(){
        t = setTimeout("sample()",2000);
    });

});

HTML:

<input type="button" id="button" value="Call sample function with delay">

一旦我点击按钮,sample()函数不被调用与延迟2秒。我不知道是什么问题。

如何使用setTimeout()通过jQuery调用JavaScript函数

解决方法

因为你在匿名函数中声明样例,你传递给准备好,它的作用域到那个函数

然后将一个字符串传递给setTimeout,在2秒后对其进行求值。这发生在当前范围之外,因此它找不到该函数

只传递函数到setTimeout,使用eval是低效的,很难调试。

setTimeout(sample,2000)

猜你在找的jQuery相关文章