大众计算机学习网

专门提供各种电脑教程

页面回发滚动条位置不变

Admin | 2015-3-6 11:08:28 | 被阅次数 | 2445

  如果页面中有相应的功能,一般会导致页面刷新,而页面比较长的话,会导致刷新之后,页面位置又回到顶端,让用户再次滚动页面,这样很麻烦也不利于页面的浏览,有时候,我们需要这样的一种功能,当页面频繁刷新之后,如何让页面自动回到原来的滚动条位置呢?

  下面,提供给大家两种方法,这两种方法,都不使用JS来实现,而是直接在页面的page中进行相应设置即可。

  我说的方法,是应用在aspx技术的页面中。

  第一种方法:

  在页面的Page指令中,添加

  maintainScrollPositionOnPostBack="true"

  这一行代码。

  当然,如果你不想添加指令,也可以在代码中添加如下的程序。

  Page.MaintainScrollPositionOnPostBack=true;

  第二种方法:

  在页面的Page指令中,添加

  SmartNavigator="true"

  这一行代码。

  当然,如果你不想添加指令,也可以在代码中添加如下的程序。

  SmartNavigator=true;

  区别,使用第一种方法,在哪种浏览器都通用,但是会有一个跳跃的闪动,也就是说,当页面回发刷新的时候,页面会从顶部开始跳跃至原来的滚动条位置。如果使用第二种方法,效果非常好,没有跳跃的闪动,但是只能在IE浏览器使用,其它浏览器就没有效果了。建议使用第一种。

  知识拓展:也可以使用JS来实现。

  <script>
  window.location.hash="a";
  </script>

  在你想要定位的网页位置写:<a name="a"></a>