0
   $(document).ready(function() {
    $(".voteMe").one('click', function (event) { 
              event.preventDefault();          
           //my stuff

$(this).prop('disabled', true);
        });
    });

上面的代码允许单击鼠标。但不允许单击鼠标,我的意思是单击鼠标单击它假设双击。我的最终结论是我希望允许所有单击并允许双击(当消费者输入双击时,只需要单击)

4

5 回答 5

1

使用以下代码

 $(".voteMe").click(function (e) {
        if ($(this).hasClass('clicked')) return;
        $(this).addClass('clicked');
         setTimeout(function() { $(this).removeClass('clicked'); }, 500);

    });
于 2014-04-23T08:54:54.413 回答
0

您可以使用setTimeout()函数并阻止处理程序在指定时间段内执行:

$(".voteMe").on('click', function (event) {
    if ($(this).hasClass('clicked')) return;

    var $this = $(this).addClass('clicked');
    setTimeout(function() { $this.removeClass('clicked'); }, 500);

    // ...
});
于 2013-09-24T11:00:52.473 回答
0

尝试这个:

 $(document).ready(function() {
    $(".voteMe").one('click', function (event) { 
          event.preventDefault();          
       //my stuff

       $(this).prop('disabled', true);

       $(".voteMe").unbind("click");
    });
});
于 2013-09-24T11:28:18.837 回答
-1

然后,您应该取消绑定双击:

$('.voteMe').unbind('dblclick');
于 2013-09-24T10:51:45.180 回答
-2

jquery分别绑定双击和单击

var DELAY = 700,点击次数 = 0,计时器 = null;

$(文档).ready(函数() {

$("a")
.live("click", function(e){

    clicks++;  //count clicks

    if(clicks === 1) {

        timer = setTimeout(function() {

            alert('Single Click'); //perform single-click action

            clicks = 0;  //after action performed, reset counter

        }, DELAY);

    } else {

        clearTimeout(timer);  //prevent single-click action

        alert('Double Click');  //perform double-click action

        clicks = 0;  //after action performed, reset counter
    }

})
.live("dblclick", function(e){
    e.preventDefault();  //cancel system double-click event
});

});

于 2013-09-24T10:53:29.560 回答