2011-03-22 47 views
1

說你創建一個widget稱爲my_widget並創建實例上my_div這樣:有沒有更好的方式來運行jQuery UI小部件方法?

jQuery('#my_div').my_widget() 

假設my_widget有do_something方法。據小部件工廠的文檔,你會訪問do_something像:

jQuery('#my_div').my_widget('do_something', ['arg1','arg2']) 

這被證明是相當繁瑣的。這很容易出錯,因爲如果由於某種原因,my_div還沒有小部件,如果您嘗試運行do_something,jQuery UI會簡單地創建一個新實例。有沒有更好的辦法?

理想情況下,應該是說一個方法:

widget = jQuery('#my_div').my_widget('get_instance') 
... 
widget.do_something('arg1', 'arg2') 

有沒有像get_instance內置的東西嗎?

回答

1

如果您閱讀了jQuery Plugin Authoring,您會發現這是在插件中調用函數的標準方法,典型實現無法將這些函數作爲常規方法公開。

相關問題