0

divブロックを表示および非表示にする単純なjqueryスクリプトがあります。

<script type="text/javascript">'
    $(document).ready(function(){    
        $(".slidingDiv").hide();
        $('.show_hide').click(function(){
            $(".slidingDiv").slideToggle();
        }); 
    });
</script>

<a class="show_hide" href="#">Show/hide</a>
<div name="gohere" class="slidingDiv">
   ...
</div>

正常に動作していますが、URLに#gohereが含まれている場合は、このdivを自動的に表示し、.show_hideクリックした場合にのみ非表示にします。

4

1 に答える 1

1

div IDをgohereに設定すると、次のことができます。

$('.show_hide').click(function(){
    $($(this).attr('href')).slideToggle();
});

href属性にが含まれる#gohereため、slidetoggleのセレクターは最終的には、#goheredivsIDに関連付けられます。

編集:質問の最初の部分については、から現在のハッシュタグを取得できますwindow.location.hash

if (window.location.hash.length > 0) {
    $(window.location.hash).show();
}

おそらくそこにもっと良いエラーチェックを入れるべきですが、それはうまくいくはずです。

于 2012-06-11T17:38:20.760 に答える