2016-02-12 137 views
1

我在這裏有兩個頁面:索引和結果。在results.html中,我有一些CSS屬性設置爲display:none的div。我想從索引(導航菜單)導航並打開結果頁面,同時顯示隱藏的div。 jQuery對results.html工作正常,但我不知道如何觸發來自索引的此函數。jQuery導航到另一個頁面並顯示div隱藏

指數:

<ul> 
    <li><a id="menu-2016" href="results.html#2016">2016</a></li> 
    <li><a id="menu-2015" href="results.html#2015">2015</a></li> 
</ul> 

結果:

<section id="2016">Content</section> 
<section id="2015">Content</section> 

CSS:

#section-2015, #section-2016 { 
    display: none; 
} 

的jQuery:

$(document).ready(function() { 
    $("#menu-2016").click(function() { 
     $("#section-2016").slideDown(); 
     $("#section-2015").slideUp(); 
    }); 
    $("#menu-2015").click(function() { 
     $("#section-2015").slideDown(); 
     $("#section-2014").slideUp(); 
    }); 
}); 
+0

搜索關於'window.hash'和事件'window.onhashchange' 。這將是你輕鬆的解決方案。 –

+0

什麼是$(「#section-2016」)?您沒有此ID的元素 –

+0

@DarrenSweeney鍵入時出錯。 – h1ghland3r

回答

1

您可以簡單地檢查URL哈希/片段。

$(document).ready(function() { 
    if (window.location.hash == '#2016') { 
     $("#section-2016").slideDown(); 
     $("#section-2015").hide(); 
    } 
    if (window.location.hash == '#2015') { 
     $("#section-2016").hide(); 
     $("#section-2015").slideDown(); 
    } 
}); 
+0

工程就像一個魅力!謝謝。 – h1ghland3r

+0

請接受它是否正確! –

1

您可以使用

window.name 

財產。總是通過Javascript實例化的窗口對象具有該屬性,並且在同一窗口中加載新文檔時始終保持相同。因此,將window.name設置爲您來自的頁面。在索引文件的頁面加載時執行此操作。在結果文件中,您可以在頁面加載時測試該條件,以及在索引文件中只顯示與其相對應的隱藏內容。

0

我想,發送您的PARAMS爲實際PARAMS:

<ul> 
    <li><a id="menu-2016" href="results.html?year=2016">2016</a></li> 
    <li><a id="menu-2015" href="results.html?year=2015">2015</a></li> 
</ul> 

,並解析PARAMS如下所述:How can I get query params...

相關問題