我正在寻找一种方法,只要打开一个jQuery手风琴的标签,找出哪个标签被打开了? 我注意到有一个选项'change'可以调用带有'event'和'ui'参数的函数,但找不到使用它们来确定哪个标签被打开的方法?
答案 0 :(得分:3)
jQuery UI手风琴的documentation清楚地显示了如何实现更改事件:
$('.ui-accordion').bind('accordionchange', function(event, ui) {
ui.newHeader // jQuery object, activated header
ui.oldHeader // jQuery object, previous header
ui.newContent // jQuery object, activated content
ui.oldContent // jQuery object, previous content
});
ui.newHeader
属性是指正在打开的<h3>
元素。 ui.newContent
指向包含手风琴内容的<div>
。
oldHeader
和oldContent
属性指向关闭手风琴部分的<h3>
和<div>
元素。
所有这些属性都是jQuery对象,因此ui.newContent
类似于$(".ui-accordion-content:visible");
等。
答案 1 :(得分:1)
您可以使用“有效”选项获取有关展开选项卡的信息:
var active = $(“。selector”)。accordion(“option”,“active”);
如果您需要按需加载某些内容,我建议您在更改回调中调用此方法。