Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.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 停止触发器函数以在Jquery中多次运行_Javascript_Jquery_Eventtrigger - Fatal编程技术网

Javascript 停止触发器函数以在Jquery中多次运行

Javascript 停止触发器函数以在Jquery中多次运行,javascript,jquery,eventtrigger,Javascript,Jquery,Eventtrigger,出于某种原因,我的触发器函数(即使只调用一次)会多次运行触发器 代码如下:- 当“触摸”功能触发“点击”功能一次时,“点击”功能会运行多次 不管怎样,我能强迫它运行一次吗 谢谢。点击在触摸元件300毫秒后被触发,无论您是否在触摸启动。所以,因为您在touchstart上触发它,它会触发两次。你可以这样做: 示例如下: 单击在触摸该元素300毫秒后被触发,无论您是否在触摸启动上触发该元素。所以,因为您在touchstart上触发它,它会触发两次。你可以这样做: 示例如下: 您可能需要$(这个)而不

出于某种原因,我的触发器函数(即使只调用一次)会多次运行触发器

代码如下:- 当“触摸”功能触发“点击”功能一次时,“点击”功能会运行多次

不管怎样,我能强迫它运行一次吗


谢谢。

点击
在触摸元件300毫秒后被触发,无论您是否在
触摸启动
。所以,因为您在touchstart上触发它,它会触发两次。你可以这样做:

示例如下:


单击
在触摸该元素300毫秒后被触发,无论您是否在
触摸启动
上触发该元素。所以,因为您在touchstart上触发它,它会触发两次。你可以这样做:

示例如下:

您可能需要
$(这个)而不是
$('.video section ul li a')。触发器('click')因为前者只会触发点击触发
touchstart
事件的元素。后者将触发对与选择器匹配的每个元素的单击。

您可能需要
$(此)。单击()而不是
$('.video section ul li a')。触发器('click')因为前者只会触发点击触发
touchstart
事件的元素。后者将触发对与选择器匹配的每个元素的单击

$('.video-section ul li a').on({ 'touchstart' : function(){ 

    console.log("Touched"); 
    $(".video-section ul li a").trigger("click");

} });

$(".video-section ul li a").click(function(e){

  e.preventDefault();

  console.log("clicked");
  e.stopPropagation();

});
$('.video-section ul li a').on('click touchstart', function(e){ 
    e.preventDefault();

    if(e.type == "touchstart") {
       console.log("touchstart event");
       // whatever else on touch event
    } else if(e.type == "click") {
       console.log("click event");
       // whatever else on click event
    }

});