2012-09-25 66 views
1

編輯:jQuery-ui has been modified。這個問題現在已經過時了。如果觸發「刪除」事件,可排序區域如何凍結?

如果我在可排序區域的元素上觸發'remove'自定義事件,則排序功能將停止。

我在我的應用程序中使用此'remove'自定義事件來在不同的偵聽器和活頁夾之間進行通信,我想了解爲什麼它會干擾jquery-ui

我無法在任何地方找到關於'remove'事件的文檔。注意:選項中有remove屬性,根據文檔對應於'sortremove'事件類型,但沒有關於事件類型'remove'

我將不得不重新命名我的事件以避免這種衝突,但這是一個功能嗎?一個錯誤? 'remove'事件是否僅在內部使用,如果是,我是否應該請求它們命名空間,如'ui-remove'

見本撥弄中的示例:在widget源被創建在_createWidget插件時http://jsfiddle.net/yWg8v/7/

回答

2

remove勢必:

this.element.bind("remove." + this.widgetName, function() { 
    self.destroy(); 
}); 

sortable是一個小部件。你將不得不重新命名你的事件。你建議增加一個ui-前綴聽起來像是一個很好的解決方案,但我不確定開發者會如何感受以及它會如何影響其他小部件。

+0

@ Marc-AndréLafortune更新回答;) – MLM

+0

@ Marc-AndréLafortune對不起,誤會。添加回答。 – MLM

+0

啊,的確如此。所以這是一個bug,jQuery-ui在內部使用'triggerHandler',但它不應該做任何事情,如果它是一個事件冒泡。 https://github.com/jquery/jquery-ui/pull/736 –