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

将divs ID设置为gohere,然后你可以这样做:

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

由于您的 href 属性将包含#gohere,因此 slidetoggle 的选择器最终将是#gohere,这与您的 div ID 相关。

编辑:对于您问题的第一部分,您可以从window.location.hash.

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

您可能应该在那里放置一些更好的错误检查,但它应该可以工作。

于 2012-06-11T17:38:20.760 回答