2016-09-30 127 views
0

我有一個頁面列出了一大堆類別及其關聯的項目。我想要做的是讓這個頁面列出類別,如果你點擊一個類別,它會展開以顯示該類別中的項目。我使用內置的展開/摺疊功能引導程序來實現此目的。Bootsrap在一個鏈接上展開,並加上另一個頁面的鏈接

這很好,除非js不加載(如果存在js錯誤,您的移動連接速度較慢,js尚未下載,則可能是這種情況)。爲了解決這些情況,我希望我的類別鏈接到獨立類別頁面。

問題是,當您點擊該類別時,它會展開項目列表,但會將您帶到類別頁面,而不是讓您保持在您所在的位置。

任何想法如何解決這個問題?我知道我可以使用return false,但我真的不想開始修改bootstrap.js文件。

謝謝!

<a class="toggle_div" data-toggle="collapse" data-target=".category_56" href="link.html"> 
    Category 56 
</a> 
<div class=" category_56 in"> 
    Here is the info to expand and collapse 
</div> 

回答

0

這個屬性:

href="link.html" 

是你的問題。

如果你需要測試,如果相關的股利滿載你可以這樣做:

$($(this).data('target')).length == 1 

哪裏這是你的toggle_div錨。

因此,一個可能的解決方案可能是:

$('.toggle_div').on('click', function(e) { 
 
    
 
    if ($($(this).data('target')).length == 1) { 
 
    // 
 
    // if the related div is loaded you can prevent default action 
 
    // 
 
    e.preventDefault(); 
 
    } else { 
 
    // goto next page 
 
    } 
 

 
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 

 
<a class="toggle_div" data-toggle="collapse" data-target=".category_56" href="link.html"> 
 
    Category 56 
 
</a> 
 
<div class=" category_56 in"> 
 
    Here is the info to expand and collapse 
 
</div>

相關問題