如果在(x)秒后没有单击Jquery,则自动执行函数

时间:2011-08-11 21:21:34

标签: jquery

我有一个函数可以执行滑动打开几个div来显示背后的内容。点击时有一个按钮激活该功能以显示所述内容。我想弄清楚如果7秒后没有点击按钮,如何自动执行该功能。任何帮助将不胜感激。

这就是我所拥有的。

$(document).ready(function() {

        $(".button").click(function(){
                $(this).fadeOut('slow'); 
                    $(".leftside").animate({width:'60px'}, 500 );
                    $(".rightside").animate({width:'60px'},500 );
        });

    }); 

3 个答案:

答案 0 :(得分:6)

添加计时器:

var timer = setTimeout(function() { $(".button").click(); }, 7000);

然后点击按钮清除它:

clearTimeout(timer);

完整代码:

$(document).ready(function() {
    var timer = setTimeout(function() { $(".button").click(); }, 7000);
    $(".button").click(function(){
            clearTimeout(timer);
            $(this).fadeOut('slow'); 
                $(".leftside").animate({width:'60px'}, 500 );
                $(".rightside").animate({width:'60px'},500 );
    });
});

答案 1 :(得分:1)

$(document).ready(function() {
    var myclick=setTimeout(function(){
        $(".button").click();
     }, 7000);
    $(".button").click(function(){
            clearTimeout(myclick);
            $(this).fadeOut('slow'); 
                $(".leftside").animate({width:'60px'}, 500 );
                $(".rightside").animate({width:'60px'},500 );
    });

});

答案 2 :(得分:0)

$(document).ready(function() {

        setTimeout( showThis(), 7000 );

        $(".button").click(showThis);

        function showThis(){
                $(".button").fadeOut('slow'); 
                    $(".leftside").animate({width:'60px'}, 500 );
                    $(".rightside").animate({width:'60px'},500 );
        });

    });