jquery - 使用 jQuery 将单个事件处理程序绑定(bind)到多个事件

标签 jquery events

我有以下 div,具有 onblur、onmousedown、onmouseup 和 onfocus 的不同功能。我想最小化代码,并且在 div 内只有一个函数调用来处理所有函数状态。我想用 jquery 来做到这一点 所以换句话说。我想创建一个名为 functionAll 的函数,并将所有 function1 放入 function 4 中,其中包含鼠标状态,然后只需在 Div 中使用 functionAll 即可。我怎样才能做这样的事情?

<div contentEditable="true"
     onblur="function1();"
     onmousedown="return function2(event);"
     onmouseup="function3();"
     onfocus="function4();">
    test test
</div>

最佳答案

你应该在 div 上放置一个 id,说“测试”,然后:

$('#test').bind('blur mousedown mouseup focus', function (e) {
    // This is your combined function
    // Inside here you can use e.type to find out whether it was a
    // "blur", "mousedown", "mouseup", etc...
});

HTML 将如下所示:

<div id="test" contentEditable="true">
    test test
</div>

关于jquery - 使用 jQuery 将单个事件处理程序绑定(bind)到多个事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4710219/

相关文章:

jquery - Laravel 5.6 中的日期时间范围搜索

javascript - 刷新后过滤器被清除

C# 事件处理程序

c# - Fluent NHibernate - 如果其依赖项之一不存在,则不返回实体

javascript - jQuery 的 .live ('click' , fn) 和 .click(fn) 之间的性能差异

java - 使用 SWT 创建 GUI 时出现 Event.gc 错误

javascript - 如何在textarea的onFocusOut之前调用button的onclick?

javascript - 拖动时出现意外的边距/填充 (jQuery Ui)

javascript - AngularJS 动态内容在页面刷新时消失

jquery - 如何更改 jQuery UI 确认对话框中的按钮标签