私のボールを壊している簡単な質問.
モーダルで別のアコーディオン (.glossWrap) を開く jquery ui アコーディオン (.accordion) があります。scrollTop を使用して、アクティブなアコーディオン ヘッダーをスクロールして表示しようとしていますが、不具合が発生しただけです。
$(".glossary").on("click", function () {
$(".glossWrap").accordion({heightStyle:"content", header:"h3", navigation : true, collapsible:true})
var $accordion = $(".glossWrap"),
panelId = parseInt(window.location.hash.replace(/#panel/, "")) || 0;
var $this = $(this), toOpen = $this.data("panel");
$accordion.accordion("option", "active", toOpen), ( "option", "collapsible", true );
} );
$('.glossary').click(function(){ setTimeout( function(){
$('#pageslide').animate({
scrollTop: $(".ui-accordion-content-active").offset().top}, 2000);
}, 800) });
モーダルが開く前に setTimeOut を使用して待機します。
html: リンク付きのアコーディオン 1 .glossWrap アコーディオン 2
<div class="accordion">
<h3 id="accordion">accordion 1</h3>
<div>
<p><a href="#" data-panel="1" class="glossary">open accordion item in modal</a></p>
</div>
</div>
ページスライドのアコーディオン:
<div id="pageslide">
<div class="glossWrap" >
<div class="glossIndexWrap">
<h2>A</h2>
<h3>glossWrap</h3>
<!--1-->
<div>
<p>open this and scroll into view</p>
</div>
</div>
</div>
ご提案いただきありがとうございます。:)
よろしく、ウィル