-
Notifications
You must be signed in to change notification settings - Fork 42
Open
Description
var w = Widget.extend({
events: {
'init [data-banner]' : function(event, data){
console.log(data); // 不能传递data
}
}
})
w.$('div').trigger('init', {a:'b'}); 在内部触发jQuery的自定义事件时, widget 事件处理是接收不到data
在widget.js 的170行上下修改代码可以解决这个问题
var callback = function(ev) {
if (isFunction(handler)) {
handler.call(widget, ev)
} else {
widgethandler
}
}
将上面代码修改为
var callback = function(ev, data) {
if (isFunction(handler)) {
handler.call(widget, ev, data || ev._args)
} else {
widget[handler](ev, data || ev._args)
}
}
使用 jQuery时,有data可以传递,
使用Zepto时,ev._args 就是 trigger 时传递的data
Metadata
Metadata
Assignees
Labels
No labels