我使用@touchstart @touchmove @touchend做了全屏轮播的效果 但是他存在一个问题是 我引入的组件 不管点击那里他都进行了响应,但是我引入的子组件有一些按钮我需要自己点击 不需要触发父亲里面的事件 我第就是想到事件冒泡都是怎么加都不对
我使用@touchstart @touchmove @touchend做了全屏轮播的效果 但是他存在一个问题是 我引入的组件 不管点击那里他都进行了响应,但是我引入的子组件有一些按钮我需要自己点击 不需要触发父亲里面的事件 我第就是想到事件冒泡都是怎么加都不对
解决其实很简单 我是这么解决的
我在子组件里面 在一次调@touchend这个方法 因为touch事件是在click事件前面的 不管怎么点击都先执行的父组件的touch事件,在子父里面同时调touch事件打印结果来看 是先执行的子在执行的父
然后我就想到 event.stopPropagation();//禁止触发父元素的事件 我在子组件点击之前先调用这个方法 禁止触发父元素的事件 就行了
上面是我的解决办法 感谢刚才那位大哥点了我一下 要是大哥还有什么好的解决办法 可以教小弟
正确解决方式 在子组件里面写上@touchend.stop即可
6 回答3k 阅读✓ 已解决
8 回答4.8k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
5 回答2.9k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
你想阻止子组件冒泡不应该在子组件里stop吗,你在父组件stop有什么用?