onclick默认为ontouch

时间:2014-08-19 06:18:20

标签: javascript html touch event-listener

如果我有一个网页,并且我希望监控div上的点击次数和触摸次数,是否必须为每个事件添加事件监听器,或者touch事件是否为click移动设备默认情况下的事件?

3 个答案:

答案 0 :(得分:1)

是的,默认情况下touch移动设备上的元素会触发其click事件处理程序。但是,这种行为通常是不合需要的,因为它允许在事件处理函数运行之前延迟300ms。有关详细信息,请参阅this blog post

答案 1 :(得分:0)

使用此mousedown()

但这会记录拖动和所有类型的鼠标按钮。

$('yourelementid').mousedown(function(e){
if( (e.which == 1) ) {
     alert("left button");
   }if( (e.which == 3) ) {
     alert("right button");
   }else if( (e.which == 2) ) {
      alert("middle button"); 
   }
   e.preventDefault();
});

试试这个......

答案 2 :(得分:0)

尝试并排发起两个事件

$('myDiv').on("mousedown touchstart", function (e) {
    if (userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/Android/i)){
 //try mousemove touchmove together
 // define your logic

})