4
的jQuery UI 1.8加入擴展插件使用這樣的代碼的能力:如何繼承一個部件
$.widget("my.weirdbutton", $.ui.button, {
});
現在,我可以創造一個weirdbutton
和它的作品很像一個按鈕:
$("#myButton").weirdbutton();
但是,只有怪異的事件纔會被解僱。所以,如果我有類似的東西
$(".button").bind("buttoncreate", function() {
console.log("a button was created");
});
我會想念所有創建怪異按鈕。這可以通過手動觸發怪異按鈕小部件中的按鈕事件來解決。不是很好,但有效。
更大的問題是像這樣的代碼將無法正常工作:
$("#mybutton").weirdbutton();
$("#mybutton").button("option", "text", "My New Text");
第二行,而不是設置在現有按鈕的選項,創建一個新的。我不知道如何解決這個問題。
那麼,有沒有辦法在Liskov Substitution Principle之後創建一個子類的小部件?
問題是'console.log'被我的插件的**用戶**調用,而不是我。我不知道他們真的想做什麼(日誌記錄只是一個例子),我不能將它硬編碼到小部件代碼中。 – itsadok
感謝ant1j,我不知道如何調用上級的原創方法! – acme
如果出現這種情況,請不要忘記將問題標記爲「已回答」! – ant1j