【发布时间】:2014-02-19 10:21:00
【问题描述】:
我正在将 jQuery UI 中的 Widget 工厂用于现有的生产环境。
此环境使用名为sm2.validateNext 的绑定事件,该事件在页面更改之前触发。但是,当尝试使用_on 绑定到此事件时,它会尝试拆分此事件名称并委托它。 (我认为这是正确的,不是我预期的功能)。
代码(在 $.widget 内):
this._on(true, document, {
"sm2.validateNext": function () { ... },
});
并调试此代码,它被委派(不是我的预期行为)(来自 jquery-ui.widget.js)
var match = event.match( /^(\w+)\s*(.*)$/ ),
eventName = match[1] + instance.eventNamespace,
selector = match[2];
if ( selector ) {
delegateElement.delegate( selector, eventName, handlerProxy );
} else {
element.bind( eventName, handlerProxy );
}
因为 . (点)它得到一个匹配并且选择器在委派事件时变得有效。但是我需要绑定它的 handlerProxy。
有没有办法避免“陷入”这场比赛?我试图逃避 sm2\.validateNext 没有结果。
注意:
$(document).on("sm2.validateNext"...) 对我不起作用,因为我需要实例位于小部件对象上。
感谢您的帮助!
【问题讨论】:
标签: javascript jquery jquery-ui jquery-widgets jquery-ui-widget-factory