将多个事件绑定到同一个函数

如何将多个事件绑定到同一个函数。 我想点击和触摸开始做同样的事情。 然后我想要一个鼠标hover的第二个function。 我想使用这种设置:

$(document).on({ click: function (event) { // I want this: click, touchstart: function (event) { event.preventDefault(); // do something }, mouseover: function (event) { event.preventDefault(); // do something } }, '.link'); 

您可以将一个.on()的事件与空间组合:

 $(document).on('click touchstart', function(e) { // this will be called on click as well as touchstart }); 

没有理由不能调用外部函数:

 function myExternalFunction (event) { // do stuff } $(document).on({ click: myExternalFunction, mouseover: myExternalFunction }, '.link'); 

根据.on()文档 (并通过快速查看.on()实现确认),您可以这样做:

 $(document).on({ "click touchstart" : function (event) { event.preventDefault(); // do something }, mouseover: function (event) { event.preventDefault(); // do something } }, '.link'); 

演示: http : //jsfiddle.net/XzkTm/