如何将属性发送到自制活动? 我尝试这样的事情......也许存在另一种解决这个功能的结构?
var mme=document.getElementById('mme');
mme.event1=function(prop){
alert(prop.property);
}
mme.event2=function(prop){
alert(prop.property);
}
////////
mme.eventN=function(prop){
alert(prop.property);
}
$(mme).trigger('eventX',{property:'Hello World!'});
答案 0 :(得分:2)
你可以这样做 -
$('#mme').on('event1', function (e) {
console.log(e.hello);
});
var e = $.Event("event1", {
hello: "Hello"
});
$('#mme').trigger(e);
演示------>
http://jsfiddle.net/fh2eC/
答案 1 :(得分:1)
看起来你想要两个事件和方法。
// Native Method
mme.event1 = function(argument) {
alert(argument);
};
// Native Event Handler
mme.onevent1 = function(event, argument) {
alert(argument);
};
// jQuery Event Handler
$(mme).on("event1", function(event, argument) {
alert(argument);
});
当你触发一个事件时,jQuery将调用jQuery Handler,Native Handler,然后是Native方法。只有处理程序才会传递参数。调用本机方法时不带参数。
来自jQuery v1.9.1,第3018行:
elem[ type ]();
type是事件的名称。
这个jsFiddle显示所有3个被调用: http://jsfiddle.net/nV8qg/2/