2011-08-11 55 views
0

我有一个函数,执行幻灯片打开一对夫妇揭露背后的内容。有一个按钮,当点击激活功能显示所述内容。我试图找出如何在7秒后没有点击按钮时自动执行该功能。任何帮助将非常感激。jquery如果没有点击后(x)秒自动执行功能

这是我得到的。

$(document).ready(function() { 

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

    }); 

回答

5

添加一个计时器:

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); 
    }); 
}); 
+0

完美工作。谢谢! – Drhodes

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); 
    }); 

}); 
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); 
     }); 

    }); 
+0

这将每7秒触发一次。 – Mrchief

+0

是的,抱歉.. setTimeout ... – Maksym