如何向我的插件用戶公開事件?創建插件,公開事件
我知道,我應該使用:
$('#myPluginDiv').trigger('eventName', ["foo", "bar"]);
觸發事件,但我在尋找描述如何聲明和調用插件中的事件的最佳實踐。
如何向我的插件用戶公開事件?創建插件,公開事件
我知道,我應該使用:
$('#myPluginDiv').trigger('eventName', ["foo", "bar"]);
觸發事件,但我在尋找描述如何聲明和調用插件中的事件的最佳實踐。
我想你可以檢查一些常用的插件,使自己的假設。我們沒有這方面的標準,只是代碼慣例。
Colorbox(來源:https://github.com/jackmoore/colorbox/blob/master/jquery.colorbox.js)爲事件名稱定義了前綴和一些常量。它還具有觸發和運行回調的功能。
jQuery用戶界面(來源:https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.widget.js)也有觸發事件(用法:https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.dialog.js)上的小部件類常見的功能,但可以看到的是,事件是硬編碼在源的中間,而不是常量的上頂部喜歡在Colorbox上。
我個人認爲,並且在我自己的插件中這樣做,如果你有很多事件要觸發,那麼創建常量要好得多,但如果你只會觸發2或3個事件,則不需要。
輔助函數是必須的,應該是模板的一部分。
我使用並看到的所有事件名稱都遵循標準駱駝案例例如, beforeClose
。
有的主張用前綴的事件像彩盒的cbox_open
甚至click.myPlugin
(見:http://api.jquery.com/on/#event-names)
結論:儘量遵循編程的最佳實踐和慣例一般,看的更好的例子在那裏。
的插件,創建對象litereal像
var plugin = {
show:function(){
// code for show()
}
};
我在問暴露和發佈事件的最佳實踐。你的代碼甚至不遵循jQuery插件模式。 – jgauffin 2012-03-16 14:32:03