我有类似于绘图 Canvas 的东西,我在鼠标松开时捕获它的状态以用于撤消目的。 Canvas 不是全屏的,因此您可以使用画笔进行绘制并在 Canvas 外释放。像这样的事情:
$("#element").mousedown(function(){
$(document).mouseup(function(){
//do something
});
});
但这当然行不通。普通的 $(document).mouseup 也不起作用,因为我有许多其他 UI 元素,并且每次单击 UI 元素时它都会保存状态。
有什么想法吗?
最佳答案
var isDown = false;
$("#element").mousedown(function(){
isDown = true;
});
$(document).mouseup(function(){
if(isDown){
//do something
isDown = false;
}
});
为了简单起见,我将 isDown
放在全局命名空间中。在生产中,您可能希望隔离该变量的范围。
关于javascript - jQuery 检测元素内部的 mousedown,然后在元素外部检测 mouseup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4309912/