2
您可以在不使用任何JavaScript的情況下初始化引導下拉框。您也可以手動初始化它。從數據屬性初始化JQuery插件?
我創建了一個JQuery插件,並將我的所有默認值和選項與$.extends
合併。
var settings = $.extend(true, {}, defaults, options, $self.data());
我的插件get的初始化像任何普通插件一樣。
$('ul.dropdown.users-list').awesomeplugin({/* ... */});
什麼是對具有自動初始化,也不會得到複製,如果它是一個自舉下拉作品手動初始化,以同樣的方式正確的方法?
比如我明白,我可以做這樣的事情:
$(function(){
$('[data-myawesomeplugin]').each(function(){
$(this).myawesomeplugin();
});
});
但是,如果有人決定手動初始化,就不會發生初始化兩次?
這很簡單,除非它應該與將來添加一些時間的動態插入元素配合使用。如果沒有,您只需搜索具有特定數據屬性的元素,然後在這些元素上運行插件。 – adeneo
@adeneo但是如果你然後決定手動做一次指定一些選項,你不會手動初始化插件,然後從數據屬性獲得它自己的初始化?因此它會被初始化兩次? – Johnston
只需向插件中已初始化的元素或類似內容添加一個類,然後在插件中檢查該類,這是避免雙重初始化的常用方法 – adeneo