Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript .click处理程序在我双击时调用了两次-已禁用dblClick_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript .click处理程序在我双击时调用了两次-已禁用dblClick

Javascript .click处理程序在我双击时调用了两次-已禁用dblClick,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当用户双击一个元素时,我似乎无法阻止触发两次单击事件。我尝试了jQuery.click和内联onclick处理程序,并使用以下方法禁用了dblClick事件: $(window).ready(function() { $("*").on("dblclick", function(e){ e.preventDefault(); e.stopPropagation(); }); }); 我真的不想在任何地方都添加标志/超时,因为我有很多点击处理程序,

当用户双击一个元素时,我似乎无法阻止触发两次单击事件。我尝试了jQuery.click和内联onclick处理程序,并使用以下方法禁用了dblClick事件:

$(window).ready(function() {
    $("*").on("dblclick", function(e){
        e.preventDefault();
        e.stopPropagation();
    });
});
我真的不想在任何地方都添加标志/超时,因为我有很多点击处理程序,我需要全面禁用双击

请点击此处: 使用以下命令:

$(document).ready(function() {
$("*").on("dblclick", function(e){
    return false;
});

})

它甚至没有进入你的

$("*").on("dblclick", function(e){
        e.preventDefault();
        e.stopPropagation();
    });

最好使用大约300毫秒的超时来区分点击次数

我通过在所有元素上方显示一个临时div来修复这个问题,以便在400毫秒的超时时间内接收第二次点击

jQuery("*").on("click", function(e){
  if (jQuery(this).attr('id') != "double_click_div") {
    jQuery('#double_click_div').css('display', 'block');
    setTimeout(function () {
      jQuery('#double_click_div').css('display', 'none');
    }, 400);
  }
  else
    alert('caught!');
});

第一次修复输入错误$'my_button1'的可能重复。一个应该是$'my_button1'。一个是故意的,以确保只调用一次