本文介绍了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 是否保留触摸事件属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!