0
我正在构建一个自定义的自动填充小部件,我需要重写默认的“选择”行为并让它在任何外部附加的事件处理程序之前运行。为什么在配置的“select”处理程序之前调用“autocompleteselect”处理程序?
$("#input").autocomplete({
source: ['A','B','C'],
select: function() {
console.log("from config.select");
}
});
$("#input").bind("autocompleteselect", function(event, ui) {
console.log("from bind()");
});
当我从出现的自动完成的元素,下面被印到我的控制台:
from bind()
from config.select
我的问题是,为什么呢?这背后有一些理由吗?在我看来,在给予autocomplete()“构造函数”的settings/config对象中配置的事件处理程序应该首先发生,而使用bind()附加的处理程序应该在之后发生。
我意识到我可以在我的插件中使用bind()来确保我的事件处理程序是第一次运行,但它为代码添加了一些混乱。
“为什么”这种方式可能只能由jQueryUI团队成员负责...... – 2011-04-28 02:12:58