我有以下的标记:
<div id="accordion" class="leftaligned">
<div>
<h3><a href="#">Stakeholder</a></h3>
<div>Content</div>
</div>
<div>
<h3><a href="#">Relationships</a></h3>
<div>Blah blah</div>
</div>
<div>
<h3><a href="#">Address</a></h3>
<div>Yada yada</div>
</div>
<div>
<h3><a href="#">Contact Details</a></h3>
<div>Foo bar</div>
</div>
</div>
我按照以下方式创建手风琴:
$("#accordion").accordion({
header: "h3",
fillSpace: true,
changestart: function(event, ui) {
if (someConditionIsTrue()) {
event.stopPropagation();
event.preventDefault();
return (false);
}
}
});
这个想法是有一些使用情况会阻止用户更改窗格,但上述取消事件的操作没有效果,仍然可以更改窗格。
有没有办法防止更改窗格?我还尝试以编程方式激活当前窗格以防止更改,但这会触发另一个changestart事件,导致一切都混乱了(手风琴实际上会崩溃)