gpt4 book ai didi

jquery - 如何判断鼠标在 .click() 期间是否移动?

转载 作者:行者123 更新时间:2023-12-01 06:15:31 29 4
gpt4 key购买 nike

根据 jQuery 文档 .click() ,只有在这一系列事件发生后才会触发事件:

  • 当指针位于元素内时按下鼠标按钮。
  • 当指针位于元素内时释放鼠标按钮。

我面临的问题是我在项目网格上使用“单击拖动”功能,我想为每个项目注册单击事件。这意味着每次我单击拖动时,鼠标都会在某个项目上按下,然后在拖动发生后在同一项目上释放鼠标。这将触发点击事件。

有没有什么方法可以仅在鼠标在按下鼠标和释放鼠标之间没有移动的情况下触发事件?虽然这看起来微不足道,但作为 jQuery 初学者,我有点困惑。

最佳答案

跟踪 mousedown 和 mouseup 之间的鼠标位置,以查看鼠标指针的移动情况。您可能应该添加一点误差范围,例如每个方向几个像素,但下面是一个简化的示例:

var left  = 0,
top = 0;

$(element).on({
mousedown: function(e) {
left = e.pageX;
top = e.pageY;
},
mouseup: function(e) {
if (left != e.pageX || top != e.pageY) {
alert(' OMG, it moved ! ');
}
}
});

关于jquery - 如何判断鼠标在 .click() 期间是否移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16972753/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com