2015-04-27 67 views
0

幾周前問過這個問題,但一直沒有找到解決方案 - 我是一個代碼新手,所以我會盡我所能來更具體。來自外部錨鏈接的開放式手風琴面板

我有一個帶手風琴的頁面 - 它是內置爲網站主題附帶的簡短代碼。我在外部頁面中有鏈接,這些鏈接帶有可將您帶到手風琴頁面的錨定標記 - 現在,當點擊這些鏈接時,用戶將被帶到該術語,但面板不會打開。我希望手風琴小組也能開放。按原樣,所有面板都會在您進入頁面時關閉。這裏是我的代碼至今去除「封閉」類時點擊一個鏈接瓦特/錨:

var anchor = window.location.hash.substring(1); 
$('.' + anchor).removeClass('su-spoiler-closed'); 

我一直沒能得到它的工作,也許我沒有它在正確的位置?也許jquery一般不在頁面上工作?

+0

您可以檢查是否jQuery是沒有在控制檯上正常工作。 – cr0ss

+0

這聽起來像一個wordpress頁面 - 我是否正確?爲什麼不去手風琴的頁面,當手風琴展開後再看看手風琴?這會讓你知道你需要手動打開它。例如,刪除'closed'類可能很好,你可能還需要添加一個'open'類......從我們在那裏學到的東西,我們可以定製你的jQuery代碼來做你所需要的。 – chrismillah

+0

你正在用什麼來創作手風琴? – Craicerjack

回答

0

假設jQuerUI手風琴

基本上,你要聽上負載的行動,並使用API​​來設置所需的元素。

API:http://api.jqueryui.com/accordion/#option-active

必須類的手風琴的父包裝(在這裏,作爲.parent),這個選擇語法工作:

$(function(){ 
    var anchor = window.location.hash.substring(1); 

    $('.parent a[href$="' + anchor+ '"]').ready(function() { 
      var index = $(this).parent().children().index(this); 
      $(".parent").accordion("option", "active", parseInt(index,10)); 
    }); 
}); 
1

您也可以使用CSS,它更容易我們的新手。

/*accordion ids' unhide*/ 
    #id:target{ 
     display:block; 
    } 
/* end css */ 

鏈接:www.website.com/page.htm#id