Jquery取消绑定点击然后延迟然后绑定点击

时间:2015-06-09 08:19:49

标签: jquery

您好我想取消绑定点击然后延迟然后绑定点击。页面加载时,我不希望能够在一段时间内点击链接。

说实话,我不知道如何实现这一点,我几乎猜测如何做到这一点,因为我的Jquery知识非常有限。

谢谢

$(document).ready(function() {      
    $(".colourise-it").unbind('click').delay(4000).bind('click')(function() {
            $('.colourise-it').click(function() {
            $('body').toggleClass('colourise');
           });
        });
 });

2 个答案:

答案 0 :(得分:1)

无需bindunbind只需在页面加载时添加disabled类,如下所示,并在一段时间后启用它:

<强> DEMO

一个小的 CSS

.disableClick{
    pointer-events: none;
}

<强> JS

$(document).ready(function(){
   $('.colourise-it').addClass('disableClick');
    setTimeout(function(){
        $('.colourise-it').removeClass('disableClick');
    },4000);
    $('.colourise-it').bind('click',function(){
        $('body').toggleClass('colourise');
    });
});

答案 1 :(得分:0)

  

当页面加载时,我不希望能够单击链接   设定一段时间。

您可以使用本机JS函数setTimeout,它允许您在给定超时后执行函数 等到页面加载完毕。然后设置超时4000毫秒来绑定点击并切换CSS类。

$(document).ready(function() {
    setTimeout(function() {
        $(".colourise-it").on('click', function() { // ... });
        $('body').toggleClass('colourise');
    }, 4000);
});

看一下这个JSFiddle的工作样本:DEMO