javascript - 绑定(bind)多个事件并在所有事件触发时运行函数! JS、Jquery

标签 javascript jquery events

我想将两个鼠标事件绑定(bind)到一个函数(mousedown 和 moucemove)。但我只想在两个事件都被触发时才运行该函数。

这会将每个事件绑定(bind)到函数:(这不是我想要的)

$("#someid").bind("mousedown mousemove", function (event) {  someFunction();  });

我可以做到这一点并且它有效:

$("#someid").bind("mousedown", function (event) {  
     someFunction();
     $("#someid").bind("mousemove", function (event) {
         someFunction();
     });
});

$("#someid").bind("mouseup", function (event) {
    $("#someid").unbind("mousemove");
});

有更好、更快的方法吗???

最佳答案

仅绑定(bind)到mousemove事件。如果在移动时按下鼠标左键,则 event.which 将为 1。

$(document).on('mousemove', function(e) {
    if (e.which == 1) {
        //do some stuff
    }
});

关于javascript - 绑定(bind)多个事件并在所有事件触发时运行函数! JS、Jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22173023/

相关文章:

javascript - 如何提高scrollmagic的速度

javascript - 如何在 JQuery 中选择 id 以某个字符串结尾的下拉列表的文本?

javascript - 在网络系统 session 中显示 "user typing..."的指示

iphone - -[自定义窗口 HitTest :withEvent:] implementation to forward events

javascript - 列出使用 jQuery 检查的变量值

javascript - 提取每个数组中第一个 Index[0] 的内容如果我有一个数组并且其中有多个数组

javascript - 为 li 列表创建 "prev/next"

c# - 如何在引发另一个事件时引发一个事件?

javascript - 页面关闭后向 node.js 发送消息

javascript - 如何在GridView上调用applyFilter函数