我正在嘗試使用手風琴和使用jQuery插件哈希變化插件的Twitter引導,如果使用location.hash打開頁面和請點擊其他項目更多時間,之前項目不能關閉並保持一個打開。如何保持Bootstrap手風琴一直開着,用hashchange事件,點擊事件?
有很好的解決方案,請大家幫幫忙謝謝
使用hashchange標籤: #collapseOne, #collapseTwo, #collapseThree,
問題
- 項目開放
- 商品打開 個
- 項目接近
HTML
<div class="row">
<div class="span32">
<div class="accordion" id="accordion2">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">Item #1</a>
</div>
<div id="collapseOne" class="accordion-body collapse">
<div class="accordion-inner">content1</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">#2</a>
</div>
<div id="collapseTwo" class="accordion-body collapse">
<div class="accordion-inner">content2</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseThree">#3</a>
</div>
</div>
</div>
</div>
</div>
JS
$(function() {
$(window).hashchange(function() {
var hash = location.hash;
var action = hash.replace('#', '');
$('.accordion-heading a').click(function() {
window.location.hash = $(this).attr("href");
console.log('--------');
console.log(location.pathname);
console.log(hash);
});
switch (action) {
case "collapseOne":
$("#collapseOne").collapse('toggle');
break;
case "collapseTwo":
$("#collapseTwo").collapse('toggle');
break;
case "collapseThree":
$("#collapseThree").collapse('toggle');
break;
default:
break;
};
});
$(window).hashchange();
});
這裏的demo
這裏的code
我不知道如何告訴,這樣的狀態 1.going網址 - 網址#collapseOne 2.點擊item - url#collapseTwo 3.keyup back - open url#collap seOne && close - url#collapseTwo && hashchange – komodo