0

我想将多个事件附加到单个元素。但我想为每个事件附加不同的数据。jQuery中附加多个事件的方式如下:

 $("div.test").on({
     click: this.clickEventCalled,
     mouseenter: this.mouseEnterEventCalled
     mouseleave: this.mouseLeaveEventCalled
 });

但我希望能够做这样的事情:

 $("div.test").on("click", { name: "Karl" }, clickEventCalled);

我想知道是否有比这样做更优雅的方法:

 var self = this;
 $("div.test").on({
     click: function(event){
         self.clickEventCalled(event,{name:"Karl"})
     },
     mouseenter: function(event){
         self.mouseEnterEventCalled(event,{name:"Ben"})
     },
     mouseleave: function(event){
         self.mouseLeaveEventCalled(event,{name:"Ken"})
     }
 });
4

1 回答 1

0

你可以这样做:

$("div.test").on("click", { name: "Karl" }, clickEventCalled)
             .on("mouseenter", { name: "Ben" }, mouseEnterEventCalled)
             .on("mouseleave", { name: "Ken" }, mouseLeaveEventCalled);
});
于 2013-02-22T20:02:37.313 回答