2014-01-07 36 views
1

使用Twitter Bootstrap 2.3.2摺疊插件。在嵌套摺疊中選擇手風琴切換以完全關閉手風琴

遇到麻煩試圖操縱與JavaScript嵌套手風琴。

我想要捕獲的最後點擊手風琴切換的ID,以便可以參考我回到它後,我已經關閉所有打開的手風琴。

我可以使用上顯示/隱藏事件在全球範圍內關閉所有打開的手風琴,但我需要再回去打開最後選定的項目(或做另一種方式類似,如果它是簡單)。

我不能工作了如何創建所選手風琴撥動一個變量。我只能使用'this'關鍵字訪問頂級手風琴。

我可以改變如下,以便它引用手風琴切換?

$('.accordion').on('show', function() { 
    var selected = this.**[Accordion-Toggle]** 
    $('.accordion').on('hidden', function() { 
     clearCollapse(); 
    }); 
    do something with selected item here... 
}); 

---------- UPDATE --------

與Ammu的幫助下整理出事件捕獲後,我能夠修改clearCollapse功能做我需要什麼。該代碼實際上選擇手風琴琴體而不是手風琴琴鍵。

//function to fully collapse accordion on same page 
function pageCollapse(inner) { 
    $('#' + inner).find('.accordion-body').removeClass('in'); 
    $('#' + inner).find('.accordion-body').height('0px'); 
}  

//collapse inner accordion on same page 
$('.accordion').on('hidden', function (e) { 
    var selected = e.target.id; 
    pageCollapse(selected); 
}); 
+0

我在Bootstrap中使用摺疊2.3.2 – melkisadek

回答

1

這可能對你有幫助。在你的代碼中做一點改動

$('.accordion').on('show',function (event)){ 
var selected=event.target.id;   // give id of selected element 
$('.accordion').on('hidden',function() { 
    clearCollapse(); 
}); 
do something with selected item here... }); 
+0

謝謝 - 這讓我走上了正確的道路。它仍然不會選擇我期望被選中的內容,但我已經修改了clearCollapse函數來定位正確的手風琴琴體。 – melkisadek