是否保留触摸事件属性

是否保留触摸事件属性

本文介绍了jQuery 是否保留触摸事件属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

虽然此代码在触摸屏幕时会产生1"的预期行为:

While this code produces the expected behavior of "1" when touching the screen:

document.getElementById('someNodeId').addEventListener('touchmove', touch, true);

function touch(evt) {
  evt.preventDefault();
  alert(evt.changedTouches.length);
  }

使用 jQuery 选择器的相同代码:

the same code using a jQuery selector:

 $('#someNodeId').bind('touchmove', touch);

产生错误:TypeError: 表达式 'evt.changedTouches'[undefined] 的结果不是对象".

produces the error: "TypeError: Result of expression 'evt.changedTouches'[undefined] is not an object".

(设备 = iPod Touch OS 3.1.3 (7E18);jQuery 1.4.2).

(Device = iPod Touch OS 3.1.3 (7E18); jQuery 1.4.2).

这怎么可能,我做错了什么?

How is this possible and what am I doing wrong?

推荐答案

试试

$(document).ready (function () {
    $("#someNodeId").bind("touchmove", function (event) {
        var e = event.originalEvent;
        console.log(e.targetTouches[0].pageX);
    });
});

这篇关于jQuery 是否保留触摸事件属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-29 21:48