移动端 touchend 事件怎么阻止冒泡? Newb.综敏 提问于 2026-03-25 01:10:19 阅读 3 移动 我在做一个滑动删除功能,给列表项绑定了 touchend 事件,但点击后事件总是冒泡到父容器,导致触发了父级的点击逻辑。 试过在回调里加 e.stopPropagation(),但好像没用,是不是移动端得用别的方法? item.addEventListener('touchend', function(e) { e.stopPropagation(); // 删除逻辑 }); 我来解答 赞 1 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 Good“夏沫 Lv1 嗯,移动端的事件处理有时候挺棘手的。你已经在 touchend 事件里尝试了 e.stopPropagation(),这通常是正确的做法。不过有时候事件冒泡还是会出现一些奇怪的行为,特别是在混合使用触摸事件和其他事件的时候。 确保你在 touchend 事件里也调用了 e.preventDefault(),这有时候能防止一些默认行为或者冒泡问题。试试看下面这个改写后的代码: item.addEventListener('touchend', function(e) { e.stopPropagation(); e.preventDefault(); // 阻止默认行为和冒泡 // 删除逻辑 }); 这样应该可以解决你提到的冒泡问题。如果问题依旧存在,可能需要检查一下父容器是否有其他事件监听器或者样式影响了触摸行为。希望这能帮到你,有时候前端开发就是不断地调试和微调。 回复 点赞 2026-03-25 02:00 加载更多 相关推荐 1 回答 55 浏览 移动端 touchend 事件怎么阻止冒泡才有效? 我在做移动端的一个滑动删除功能,父容器和子元素都绑定了 touchend 事件,点击子元素时父级也会触发,试了 stopPropagation() 却没用,是不是写法有问题? element.addE... 欧阳春豪 移动 2026-03-15 18:43:17 2 回答 230 浏览 React中touchend事件在移动端为什么没触发? 我在用React写移动端滑动删除功能时遇到问题,给元素绑定了touchstart和touchend事件,但结束触摸时事件没反应。手指离开屏幕后控制台只打印了touchstart,touchend完全没... 极客尚文 移动 2026-02-05 00:48:25 1 回答 81 浏览 为什么移动端TouchEnd事件在快速滑动后不触发? 在移动端做卡片滑动交互时,发现当快速滑动手指离开屏幕后,TouchEnd事件偶尔不触发,导致卡片位置没及时更新。代码已经绑定了TouchEvent,但测试时发现: 尝试给卡片加了CSS过渡效果后问题更... 宇文晨晰 交互 2026-01-31 08:54:29 2 回答 30 浏览 touchend 事件在移动端不触发是怎么回事? 我在做一个滑动切换图片的功能,监听了 touchstart 和 touchmove,但 touchend 好像经常没反应,尤其是在快速滑动后松手的时候。 我试过给元素加了 touch-action: ... UI恒宇 移动 2026-03-20 23:11:22 1 回答 93 浏览 Vue里怎么实现长按事件?touchstart和touchend老是不生效 我在移动端做了一个长按删除的功能,但用 touchstart 和 touchend 总是没反应,是不是我写法有问题? 试过加 passive: false 也没用,而且在真机上测试有时候会触发 cli... 百里乙豪 交互 2026-03-19 00:51:23 2 回答 39 浏览 为什么TouchEnd事件在快速滑动后会重复触发? 我在做移动端滑动删除功能时,给元素绑定了touchstart和touchend事件。但发现当手指快速滑动后突然抬起,touchend会触发两次,导致删除逻辑执行两次。代码逻辑看起来没问题,但测试多次还... 程序员奕森 交互 2026-02-18 23:57:23 2 回答 29 浏览 touchend 事件在滚动时为什么会误触发? 我在做一个移动端的滑动删除功能,绑定了 touchstart 和 touchend 来判断用户是否轻扫。但发现只要手指在列表上滚动一下,即使没抬起,也会触发 touchend,导致误删。这是为啥? 我... 司空雪琪 移动 2026-02-24 15:42:21 2 回答 149 浏览 移动端触摸事件有300ms延迟怎么解决? 我正在给移动端网页加点击反馈,发现用ontouchend事件触发按钮高亮时,总要等半秒才生效。试过设置-webkit-tap-highlight-color透明也没用,代码如下: element.on... 瑞红 ☘︎ 移动 2026-02-02 13:36:32 2 回答 102 浏览 React中touchend事件为什么在快速滑动后无法触发? 我在用React做手势滑动时发现,当快速滑动手指离开屏幕后,touchend事件偶尔不触发,这是为什么? 代码是这样的: function Slider() { const handleTouchSt... 端木正宇 移动 2026-02-01 12:34:25 2 回答 44 浏览 移动端触摸事件阻止冒泡失效怎么办? 在移动端开发中,我给一个按钮绑定了touchstart事件,但它的点击事件总被父元素的滚动事件劫持。试过在子元素事件里加e.stopPropagation()和preventDefault,但点击时父... 宇文淑霞 移动 2026-02-14 12:23:43
touchend事件里尝试了e.stopPropagation(),这通常是正确的做法。不过有时候事件冒泡还是会出现一些奇怪的行为,特别是在混合使用触摸事件和其他事件的时候。确保你在
touchend事件里也调用了e.preventDefault(),这有时候能防止一些默认行为或者冒泡问题。试试看下面这个改写后的代码:这样应该可以解决你提到的冒泡问题。如果问题依旧存在,可能需要检查一下父容器是否有其他事件监听器或者样式影响了触摸行为。希望这能帮到你,有时候前端开发就是不断地调试和微调。