div.toggle(JQUERY)后保持滚动位置

时间:2014-04-16 02:25:09

标签: javascript jquery html asp.net css

如何在JQUERY切换事件后保持页面滚动位置,我已经搜索并研究过但无法找到解决此问题的任何解决方案。

<script src="Scripts/_hideShowDiv/jquery-1.3.2.min.js" type="text/javascript"></script>
     <script type="text/javascript">
         $(document).ready(function () {
             $('#adddriverpanel').hide();

             $('a#adddrivertrigger').click(function () {
                 $('#adddriverpanel').toggle(400);

             });


         });
    </script>

1 个答案:

答案 0 :(得分:3)

查看代码后,您只需将html更新为以下内容:

<a id="adddrivertrigger" href="javascript:void(0);" class="auto-style2">Add Drivers</a>

链接中的“#”就是将您带到页面顶部的原因。

如果您要使用带有href的锚标记来执行click事件,则需要阻止href触发(假设您不希望它)。您通常可以通过添加

来完成此操作
return false;

对于您的点击事件,但是对于空的href属性更好的做法是创建一个空的javascript调用而不是'#'。

对于咯咯笑声,这里有一些你应该/不应该用href属性做的事情:

<a href="javascript:;"></a>
<a href="javascript:return false;"></a>
<a href="javascript://"></a>
<a href=""></a>
<a href="#"></a>

以上所有内容都是无效的javascript或不同浏览器的不一致问题。

你可以解决它的另一种方法(通过jQuery)如下:

         $('a#adddrivertrigger').click(function () {
             $('#adddriverpanel').toggle(400);
             return false;
         });