javascript - touchstart 和 touchend 事件引用同一元素,而事件在不同元素上完成

标签 javascript android dom-events

我的 Android 平板电脑 Javascript 代码出现问题。

假设我有由多个 div 标签组成的网格。与“盒子”类;

现在我为网格中的所有这些 div 绑定(bind)事件处理程序。

当发生 touchstart (mousedown)事件时,我将光标移动到网格中的其他某个 div(不释放光标),然后释放当前 div 上的光标(touchend)。当我尝试提醒当前 div(即 touchend div)的 id 时,提醒会显示发生“touchstart”的 div 的 id。

$(".box").bind('touchstart',function () {alert($(this).attr("id"))});
$(".box").bind('touchend',function () {alert($(this).attr("id"))});

实际上,这是我为 Android 平板电脑编写的第一个程序。所以我需要帮助。

最佳答案

这是预料之中的,如果它做了其他任何事情,将会非常困惑。如果它最终所在的元素没有注册的监听器,您将永远不会收到 touchEnd 事件。

您可以通过查看触摸的坐标属性来了解触摸的位置,并且可以使用 touchmove 跟踪触摸的进展情况。

关于javascript - touchstart 和 touchend 事件引用同一元素,而事件在不同元素上完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11776190/

相关文章:

javascript - 引用了一个元素,如何检测它何时附加到文档中?

javascript - 关闭不保持状态变化

javascript - 如何在每次上传图像时为其指定不同的ID

java - 在回调 rxjava 中返回 Observable

javascript - 有没有办法在 JavaScript 中定期调用函数?

javascript - 在 contenteditable 聊天 div 中触发 Enter-Keypress 事件

javascript - ReactJS:在 super 代理ajax请求期间显示带有加载消息的模式

javascript - 避免直接修改 prop,因为值会被覆盖

android - 从视频 ffmpeg 中提取 alpha

android - 具有彩色背景和波纹效果的 ListView 选择器