怎么阻止touchstart touchend事件冒泡

我使用@touchstart @touchmove @touchend做了全屏轮播的效果 但是他存在一个问题是 我引入的组件 不管点击那里他都进行了响应,但是我引入的子组件有一些按钮我需要自己点击 不需要触发父亲里面的事件 我第就是想到事件冒泡都是怎么加都不对

WeChatcd35eb0f3c77a51ed3a84e55093153f0.png

阅读 6.9k
2 个回答

你想阻止子组件冒泡不应该在子组件里stop吗,你在父组件stop有什么用?

解决其实很简单 我是这么解决的
我在子组件里面 在一次调@touchend这个方法 因为touch事件是在click事件前面的 不管怎么点击都先执行的父组件的touch事件,在子父里面同时调touch事件打印结果来看 是先执行的子在执行的父
然后我就想到 event.stopPropagation();//禁止触发父元素的事件 我在子组件点击之前先调用这个方法 禁止触发父元素的事件 就行了

上面是我的解决办法 感谢刚才那位大哥点了我一下 要是大哥还有什么好的解决办法 可以教小弟
WeChat5903e20e7101d65d61004de077cf1813.png


正确解决方式 在子组件里面写上@touchend.stop即可WeChat80b07bb49e5ed93fe0b8fe107ab6ee1f.png

推荐问题
宣传栏