jQuery/jQuery UI は初めてです。ajax経由で動的コンテンツ(temp.html)をロードするページ(sample.html)に複数のタブを作成しようとしています。希望する効果は、選択したタブに応じて temp.html のコンテンツを変更することです。位置を使用して、いくつかのウィジェットを互いに相対的な位置に配置しています。
私が直面している問題は、最初のタブをクリックすると、すべて正常に動作することです。2 番目のタブをクリックすると、配置が機能しません。以下にコードを追加しました。
サンプル.html
$(function() {
$("#tabs").tabs({
ajaxOptions : {
error : function(xhr, status, index, anchor) {
$(anchor.hash).html("Couldn't load this tab.");
},
cache : false
}
});
});
<div id="content" class="content">
<div id="tabs">
<ul>
<li><a href="temp.html">Tab 1</a></li>
<li><a href="temp.html">Tab 2</a></li>
</ul>
</div>
</div>
temp.html
#widget1 {
width: 150px;
height: 70px;
top: 20px;
left: 50px
}
#widget2 {
width: 150px;
height: 70px;
}
function resetPositions() {
$("#widget2").position({
my : "left top",
at : "right bottom",
of : "#widget1",
offset : "0 50"
});
}
$(function() {
$(".customAccordion").draggable();
$(".customAccordion").accordion({
collapsible : true,
fillSpace : false,
icons : {
header : "ui-icon-circle-arrow-e",
headerSelected : "ui-icon-circle-arrow-s"
}
});
resetPositions();
});
<div id="widget1" class="customAccordion">
<h3><a href="#">Widget 1</a></h3>
<div>Widget 1</div>
</div>
<div id="widget2" class="customAccordion">
<h3><a href="#">Widget 2</a></h3>
<div>Widget 2</div>
</div>
私が間違いを犯している場合はお知らせください。