私は次のマークアップを持っています:
<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イベントが発生し、すべての地獄が解き放たれます(アコーディオンが実際に壊れます)