我使用jquery ui手风琴来显示一些数据,如果有多个面板,我希望默认情况下关闭所有面板active:false
,但如果只包含一个面板,则打开active:true
。
$(function() {
$("#accordion").accordion({autoHeight:false, collapsible: true, navigation: true,
clearStyle: true, active: false,
change: function(event, ui) {
resize_iframe();
},
create: function(event, ui) {
if($("#accordion div").length == 1) {
$(this).accordion({active:true});
}
}
});
});
我试过了,但它不起作用,即使有一个面板,面板也总是关闭的,所以有人知道问题出在哪里吗
我刚刚找到了这个问题的解决方案,即创建两个不同的配置,然后根据条件创建手风琴。
$(function() {
var more = {autoHeight:false, collapsible: true, navigation: true,
clearStyle: true, active: false,
change: function(event, ui) {
resize_iframe();
}
};
var one = {autoHeight:false, collapsible: true, navigation: true,
clearStyle: true, active: true
change: function(event, ui) {
resize_iframe();
}
}
if($("#accordion div").length == 1) {
$("#accordion").accordion(one);
} else {
$("#accordion").accordion(more);
}
});
您也可以在jquery:内的手风琴控件结束后尝试
$(function() {
if($("#accordion div").length == 1) {
$("#accordion").accordion();
$("#accordion div").css("display", "block");
}else
{
$("#accordion").accordion({autoHeight:false, collapsible: true, navigation: true,
clearStyle: true, active: false,
change: function(event, ui) {
resize_iframe();
});
}
});
我希望这能起作用,