我试图让一个元素在用户点击并拖动鼠标时做出响应。
我需要响应在每个 mousemove
发生时发生,而单个 mousedown
事件正在发生。
我正在使用 jQuery,但我也对纯 JS 实现持开放态度。这是我尝试过的:
$('.element').on('mousedown', function (e) {
$('.element').on('mousemove', function (e) {
console.log("response");
});
$('.element').off('mousedown');
});
这行得通,但在我单击一次后它会起作用,即使我不继续执行 mousedown
也是如此。
最佳答案
Hook mouseup
事件并在那里解除 mousemove
的绑定(bind):
$('.element').on('mousedown', function (e) {
$('.element').on('mousemove', function (e) {
console.log("response");
});
}).on("mouseup", function(e) {
$('.element').off('mousemove');
});
关于javascript - 使用 jQuery 单击并拖动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24766880/