使用JQ时,需要给同一个对象绑定多个事件,如果每个事件的代码都写一遍,就太浪费空间了,那么jquery能不能同时绑定多个事件呢?

jquery在1.7版本后,建议大家用on方法代替之前的bind、live、delegate等方法。

on(events,[selector],[data],fn)
events:一个或多个用空格分隔的事件类型和可选的命名空间,如"click"或"keydown.myPlugin" 。
selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代。如果选择器为null或省略,当它到达选定的元素,事件总是触发。
data:当一个事件被触发时要传递event.data给事件处理函数。
fn:该事件被触发时执行的函数。 false 值也可以做一个函数的简写,返回false。

绑定多个选择器

$(document).on('click', '#header a, #sidebar a, #footer a', function () {
     // code...
});

绑定多个事件

$("table tr").on({
    mouseenter: function() {
        // Handle mouseenter...
    },
    mouseleave: function() {
        // Handle mouseleave...
    },
    click: function() {
        // Handle click...
    }
}, "td");

同时绑定多个选择器和多个事件

$(document).on({
    mouseenter: function() {
        // Handle mouseenter...
    },
    mouseleave: function() {
        // Handle mouseleave...
    },
    click: function() {
        // Handle click...
    }
}, '#header a, #sidebar a, #footer a');