我第一次单击屏幕时需要位置。但是我需要更多。 当mousedown事件运行时,mousemove事件也将运行。当mouseup事件运行时,mousemove事件将不起作用
$("#canvas").mousedown(function (e) {
console.log("First: down position: " + e.pageX + "---" + e.pageY);
canvasMove("canvas");
});
$("#canvas").mouseup(function (e) {
console.log("Last: up position: " + e.pageX + "---" + e.pageY);
});
function canvasMove(id) {
$(id).mousemove(function (e) {
console.log("move position: " + e.pageX + "---" + e.pageY);
});
}
那么如何在mouseup事件中删除mousemove事件?
答案 0 :(得分:2)
$("#canvas").off('mousemove')
如果您还有其他东西要听鼠标,则可以为处理程序附加一个命名空间事件,例如
$("#canvas").on('mousemove.loggingPosition')
然后将其删除
$("#canvas").off('mousemove.loggingPosition')
答案 1 :(得分:1)
您可以使用on
和off
方法执行以下操作:
function canvasMove(id) {
$(id).on("mouseup",function (e) {
$( this ).off("mousemove");
console.log("move position: " + e.pageX + "---" + e.pageY);
});
}
有关更多信息,请访问here