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