2014-12-02 126 views
-1
多個位置

我目前正在與這段代碼工作:錨鏈接到使用jQuery

小提琴: http://jsfiddle.net/2hmzcgqm/12/

現在,我可以使用#rugby採取一定span內手風琴。

我希望能夠擴展到使用#football也。有人可以幫忙嗎? :-)

的Javascript:所有的

(function($) { 
    var allPanels = $('.accordion > dd').hide(); 
    var allLinks = $('a.heading'); 
    $('.accordion > dt > a').click(function() { 
     allPanels.slideUp(); 

     //Remove all 
     allLinks.removeClass('active'); 

     if ($(this).parent().next().is(":visible")) return false; 
     $(this).parent().next().slideDown(); 

     //Add active class 
     $(this).addClass('active'); 

     return false; 
    }); 
    //$('.accordion > dt > a').first().trigger('click'); 

    function setAccordion() { 
     // Get id from url 
     // var url = window.location.pathname; 
     // Test url 
     var url = 'localhost:58000/gallery#rugby'; 
     var id = url.substring(url.lastIndexOf('#')); // This will give you #football 
     var spanTag = $('.accordion').find(id); //#football span tag 
     var parentTag = spanTag.closest('dd'); 

     //open the accordion 
     allPanels.slideUp(); 
     parentTag.slideDown(); 
     parentTag.prev('dt').find('a.heading').addClass('active'); 
    } 

    // Call the function 
    setAccordion(); 
})(jQuery); 
+1

你能解釋一下你的目標是什麼嗎?目前沒有問題,你的目標不明確。 – 2014-12-02 09:38:07

+1

他使用手風琴並在網址中使用params,以便打開正確的手風琴。它正在爲1標籤(例如橄欖球或橄欖球)工作,但現在他想要打開橄欖球和足球手風琴的可能性 – Mivaweb 2014-12-02 09:39:50

+0

VDesign是正確的。我想使用多個參數,所以'畫廊#籃球'或'畫廊#橄欖球'等:) – michaelmcgurk 2014-12-02 09:40:49

回答

0

首先,我們可以不寫完整的代碼對你來說,這不是#1點。然而,我們可以幫助您找到正確的方向。

如果您希望多個元素在您的網址定義,你可以看到下面的例子Jquery reading several array parameters from url

然後趕上從URL中PARAMS和創建一個數組,你然後遍歷打開或設置正確的手風琴項目。

var arrayParams = []; 
$.each(arrayParams, function(key, value) { 

    // Get every item from the url and open the correct accordion item 

});