2012-02-05 6 views
1

私は4つの非表示のdivを持つページを持っています。私はそれらにリンクしたい場合、私はこれはdiv要素について示しており、私はそれのために書いた私のJavascript/jQueryのが原因他人を隠し例divアンカーを使用してdivを表示/非表示にする

<a href="#about" class="nav_text" id="about_link">About</a> 

のためにこれを行います。

しかし、私の問題は、ユーザーのアドレスバーが/index.php#about_contentとして読み取られることにあります。手動で入力した場合は、about_content divは非表示なので表示されません。手動で入力した場合、divにその表示を表示させるにはどうすればよいですか?

答えて

2

を使用してハッシュであるかを調べることができます

PS。

$(document).ready(function() { 
    $(window.location.hash).show(); 
}); 
+0

私にとっては素晴らしい解決策のようです。私はできるだけ早くあなたの答えを最高のものとして受け入れます(Stack Overflowは私が7分待たなければならないと言います)。本当にありがとう! –

1

ウィンドウでhashchange eventを聞きたいと思うでしょう。一度それを行うと、ハッシュから要素をロードし、一致する場合は、適切な<div>を表示します。また、ハッシュに何かがあってもそれが同じであれば、ページの初期ロードをチェックしたいでしょう。

IE7以降はhashchangeイベントをサポートしていないため、これはIE8 +互換ではありません。それらをサポートしたい場合は、多くのトリック(またはplugins)の1つを使用する必要があります。あなたは現在のハッシュを読んで、それは準備ができて、文書に表示location.hash

関連する問題