你肯定是在正確的軌道上,但如果你只打算有一個下拉列表中同時打開,那麼你希望他們以某種方式有關。幸運的是你的標記已經存在,所以我們所要做的就是修改JS。我在這裏更新了您的jsFiddle項目:http://jsfiddle.net/ninjascript/ngGGy/4/
首先選擇器。 jQuery將讓你選擇是通過使用^=
像這樣類似的屬性:
$('div[id^=button]').DropDownSelect();
現在,我們只需要更新你的插件了一下。請注意,以前的'thislist'現在稱爲'everylist'。現在我們可以強制在打開與點擊按鈕相關聯的列表之前關閉每個列表。
(function($){
$.fn.DropDownSelect = function (settings) {
jQuery.globalEval("var zindex = 100");
var thiselement = $(this);
var everylist = thiselement.next('ul');
thiselement.click(function() {
var thislist = $(this).next('ul');
if (everylist.is(':visible')) {
everylist.slideUp();
}
thislist.css('z-index', ++zindex).slideDown();
});
};
})(jQuery);
祝你好運!
在極短時間內完美(意思是我還不能接受它)。額外問題:是否可以將下拉列組合在一起,並具有不同的設置。像這樣http://jsfiddle.net/ngGGy/5/ –
@Kalle H.Väravas:我希望這是你的意思:http://jsfiddle.net/pimvdb/ngGGy/7/。 – pimvdb
嗯,是的,沒有。基本上,你解決了它,我可以看到方法。我的意思是group1可以有多個打開,group2當時只有一個打開。但分組通常是我的問題,你解決了它,添加不同的設置對我來說沒有問題。非常感謝:) –