扫码关注官方订阅号
我给一个p添加了mouseup事件 如何在点击p的滚动条时不出发mouseup事件?如何用js解决?
人生最曼妙的风景,竟是内心的淡定与从容!
滚动条属于ul,所以肯定会触发,可以考虑在外面加一个p,添加宽高overflow属性,内部的ul高度自动就好这样给ul添加点击事件就不会再触发了
提供个思路,不触发是不大可能的,但是能做个判断,用this.clientWidth,this.offsetLeft和event.clientX做个比较。判断是否点击在了滚动条上。是的话直接返回。
有个想法但是没有被验证:
将 mousedown, mouseup 和 mousemove 事件同时注册到一个函数上;
将 mousedown 作为函数内动作的起点/条件分裂点,即如果鼠标按下后,出现 mousemove 事件,就返回;否则如果出现 mouseup 事件,就执行某个动作
仅仅是想法,希望能有更多启发
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
滚动条属于ul,所以肯定会触发,可以考虑在外面加一个p,添加宽高overflow属性,内部的ul高度自动就好这样给ul添加点击事件就不会再触发了
提供个思路,不触发是不大可能的,但是能做个判断,用this.clientWidth,this.offsetLeft和event.clientX做个比较。判断是否点击在了滚动条上。是的话直接返回。
有个想法但是没有被验证:
将 mousedown, mouseup 和 mousemove 事件同时注册到一个函数上;
将 mousedown 作为函数内动作的起点/条件分裂点,即如果鼠标按下后,出现 mousemove 事件,就返回;否则如果出现 mouseup 事件,就执行某个动作
仅仅是想法,希望能有更多启发