繁体   English   中英

touchstart上没有原始事件

[英]No original event on touchstart

因此,我使用的是JQuery(1.11.3),但我一直坚持在网上找不到任何东西。

基本上,我将处理程序绑定到“ touchstart”事件,并希望检索touch事件的位置。 (注意:我也尝试过$('#id').on('touchstart'...

$(document).bind('touchstart','#main-button', function( e ){
    alert(Object.keys(e).join('\n'));
    alert(Object.keys(e.originalEvent).join('\n'));
    // awesome code here
})

这是我从第一个警报中得到的结果:

屏幕截图android 1 屏幕截图android 2

问题在于originalEvent(应该具有我正在寻找的信息)仅具有isTrusted属性。

Android 3屏幕截图

有人知道我在做什么错吗? 顺便说一下,我正在使用Chrome for Android。

originalEvent确实具有其他属性(请参阅MDN参考以获取touchstart事件属性列表 )。 Object.keys只是不返回它们。 这是因为这些属性不是不可枚举的,或者是在原型链中的某个位置定义的。

相反,您可以使用for ... in循环来获取对象和原型链中所有可枚举的属性。

$(document).bind('touchstart','#main-button', function( e ){
    alert(Object.keys(e).join('\n'));
    var keys = "";
    for(key in e.originalEvent){
       keys+=key+"\n";
    }
    alert(keys);
    // awesome code here
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM