2015-04-26 12 views
2

我有一個網站,使用點擊一個欄目的鏈接時,顯示隱藏的div(使用id=sectionname)上幾頁。但是,如果有人去直接mysite.com/#sectionname,該節除非這個人點擊該鏈接仍然隱藏。觸發jQuery的,如果URL中包含ID

是否有使用jQuery來檢查,如果一個div ID通過URL傳遞,並引發點擊的方法嗎?沿着[不實際的代碼]線的東西:

if ('# is in url') { 
    $('#-characters-until-?').trigger("click"); 
} 

回答

4

您還可以使用純CSS而不是javascript來顯示部分爲默認值。例如:

section:target { 
    display: block; 
} 

此規則使用:target選擇器選擇與ID對應的電流location.hash元件。所以,如果URL是mysite.com/#sectionname上面的規則會顯示與section#sectionname元素。

div {display: none;} 
 
div:target {display: block;}
<a href="#test">test</a> <a href="#rest">rest</a> 
 

 
<div id="test">TEST div</div> 
 
<div id="rest">REST div</div>

4

您可以檢查,看看是否window.location.hash是truthy。

if (window.location.hash) { 
     // do something here 
} 
+0

所以,如果我試圖在父DIV運行觸發器,我在理論上可以使用: 「jQuery的(文件)。就緒(函數(){ 如果(窗口。 location.hash){ var id = window.location.hash; jQuery.id.parent()。closest('。container-class')。trigger(「click」); }; });' ? –