现在遇到一个问题 有个元素A【宽度是500px】里有几个B元素[6个B元素 每个宽度是200px;] 现在滑动A的时候让显示不同的B 使用了touchstart touchmove touchend, 现在点击B元素的时候会执行A元素的滚动事件 如果设置了e.preventDefault B元素的click事件无法执行。
现在遇到一个问题 有个元素A【宽度是500px】里有几个B元素[6个B元素 每个宽度是200px;] 现在滑动A的时候让显示不同的B 使用了touchstart touchmove touchend, 现在点击B元素的时候会执行A元素的滚动事件 如果设置了e.preventDefault B元素的click事件无法执行。
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
移动端 click事件慢300ms好像是。
不如这样。
A元素的touchmove里用move变量标记是否移动。在B的touchstart里重置为false,然后在B的touchend里根据move的值判断是否响应你原本要在click里做的操作。