社区
JavaScript
帖子详情
在元素内部拖动到元素外部,onmouseup事件失效怎么办?
x269147836
2012-07-04 03:41:25
我给一个div绑定了mousedown和mouseup事件
本以为可以正常使用,
刚才手痒,按住鼠标在上面乱点,结果发现鼠标移开之后还在执行mousedown里面的代码...
...全文
286
3
打赏
收藏
在元素内部拖动到元素外部,onmouseup事件失效怎么办?
我给一个div绑定了mousedown和mouseup事件 本以为可以正常使用, 刚才手痒,按住鼠标在上面乱点,结果发现鼠标移开之后还在执行mousedown里面的代码...
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
x269147836
2012-07-05
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
mousemove也会出这问题的。
[/Quote]
没有发现呢,貌似可以了~
不过如果按住鼠标过程中移动鼠标,就停止执行了,但总比事件丢失要好~~
米娜Rose
2012-07-04
打赏
举报
回复
mousemove也会出这问题的。
x269147836
2012-07-04
打赏
举报
回复
我改成mousemove事件了
一个不用on
mouse
up的
拖动
函数
ff下on
mouse
move鼠标按不按都是1所以就不能这样用了 [Ctrl+A 全选 注:如需引入
外部
Js需刷新才能执行]
JQ拖曳
事件
mouse
up
失效
的解决办法
/ 获取鼠标的位移(鼠标此时的page值 - 鼠标按下时的初始值 =
元素
的移动值)//offset
元素
的偏移坐标 有两个属性:top left(对显示的
元素
有用)//page 显示鼠标指针的位置 (此时相当于,鼠标按下的初始值)3、
mouse
move和
mouse
up必须挂载在document。// 获取鼠标离
元素
(0,0)位置的距离。2、在
事件
最后添加return false;
记录 drawer 组件拖拽过程中 on
mouse
move
事件
在 iframe
失效
问题
于是乎,这个问题得到了解决,今天分享这篇文章主要是为了记录这个问题,希望可以帮助那些遇到相同问题的人,毕竟当时自己并没有第一时间发现这个问题,现在解决了,觉得挺值得保存并分享出去的。一开始我对问题的定位不够清楚,导致浪费了很多时间,在这个过程中如果求助 ai 也是没什么效果的的,因为一开始就没有正确的把问题描述出来,ai 所提供的答案只是它所看到的问题。所以在遇到问题时,一定要冷静下来思考代码结构,思考问题的核心,这样解决起来事半功倍。
通过iframe引入
外部
页面导致的问题(菜单链接
外部
页面后,通过鼠标
拖动
右侧菜单栏,改变它的宽度,鼠标释放时,鼠标
拖动
依然会改变菜单的宽度。)
拖动
鼠标后只进行了一个操作,放开鼠标左键,由于链接正‘常的
内部
页面时,放开鼠标左侧按键后没有改变菜单宽度,可以推测出此时on
mouse
up
事件
没有触发导致了这个问题。放开鼠标左侧按键后,鼠标
拖动
时依然会改变右侧菜单的宽度,可以知道可能document对象的on
mouse
move
事件
依然绑定了处理右侧菜单宽度的函数。基于上述的结论,可以这样解决,当鼠标左键按下操作左侧菜单时通过js操作document的API生成了一个本地的遮罩,放开左键时,取消这个遮罩就可以了。...
js实现鼠标拖拽功能基本思路
如果要设置物体拖拽,那么必须使用三个
事件
,并且这三个
事件
的使用顺序不能颠倒。 on
mouse
down:鼠标按下
事件
on
mouse
move:鼠标移动
事件
on
mouse
up:鼠标抬起
事件
拖拽的基本原理就是根据鼠标的移动来移动被拖拽的
元素
。鼠标的移动也就是x、y坐标的变化;
元素
的移动就是style.position的 top和left的改变。当然,并不是任何时候移动
JavaScript
87,994
社区成员
224,708
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章