jQuery是否保留触摸事件属性? [英] Does jQuery preserve touch events properties?
本文介绍了jQuery是否保留触摸事件属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
虽然此代码在触摸屏幕时产生了1的预期行为:
document.getElementById('someNodeId' ).addEventListener('touchmove',touch,true);
函数touch(evt){
evt.preventDefault();
alert(evt.changedTouches.length);
}
使用jQuery选择器的相同代码:
$('#someNodeId')。bind('touchmove',touch);
产生错误:TypeError:表达式的结果evt.changedTouches'[undefined]不是对象
(Device = iPod Touch OS 3.1.3(7E18); jQuery 1.4.2)。
这是怎么可能的,我做错了什么?
解决方案
尝试
$ b $ ($($)$($)$($)$($)$($)$($) b var e = event.originalEvent;
console.log(e.targetTouches [0] .pageX);
});
});
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);
}
the same code using a jQuery selector:
$('#someNodeId').bind('touchmove', touch);
produces the error: "TypeError: Result of expression 'evt.changedTouches'[undefined] is not an object".
(Device = iPod Touch OS 3.1.3 (7E18); jQuery 1.4.2).
How is this possible and what am I doing wrong?
解决方案
Try
$(document).ready (function () {
$("#someNodeId").bind("touchmove", function (event) {
var e = event.originalEvent;
console.log(e.targetTouches[0].pageX);
});
});
这篇关于jQuery是否保留触摸事件属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文