javascript - 无法获取 touchstart 事件的属性?

标签 javascript jquery ios jquery-events

当我尝试执行以下代码时:

$('.touchelement').bind({'touchstart':function(e){
    console.info(e.touches.item(0));
}});

它将输出显示为未定义。不仅在 touchstart 中,对于其他所有事件(touchmovetouchend),它都显示相同的结果。

是否有其他方法可以使用 jQuery 绑定(bind) touchstart 事件。

最佳答案

jQuery 对事件对象做了一些处理,使它们在浏览器中保持一致,但它不知道 touches 数组,因此不会将其复制到新的事件对象。因此,您需要通过原始事件对象访问它,即 event.originalEvent

$('.touchelement').bind({'touchstart':function(e){
  console.info(e.originalEvent.touches[0]);
}});

关于javascript - 无法获取 touchstart 事件的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6173382/

相关文章:

ios - 使用 'YouTube-Player-iOS-Helper' ,是否可以在从屏幕上移除 YTPlayerView 时不暂停播放?

javascript - 在 Mustache 模板中转义双括号 {{ ... }}。 (在 NodeJS 中模板化模板)

javascript - 为什么我不能在 Django 网站的 Javascript 中使用 Jinja?

javascript - 页面导航而不丢失表单字段数据?

ios - 将 NSDate 转换为本地时区,检查 'today' 或 'tomorrow' 并获取 NSString 中的日期

ios - 在 ios 中获取好友列表时,Facebook SDK Error Domain=com.facebook.sdk Code=5

javascript - 用于隐藏表格中的单元格并重新调整行中剩余单元格大小的动画。

javascript - 如果我们在 JavaScript 中使用逗号,是否能保证哪个变量将首先被初始化?

具有关联文本输入事件的 Jquery UI 范围 slider (失败)

jquery 选择器 - 排除第一个和第二个