今天在一个web应用中,在页面回发后需要保存浏览器滚动条位置,自然会想到 SmartNavigation(智能导航)属性,可是查看了Document属性-----咦?不见了?被微软枪毙了?
MSDN里搜 SmartNavigation时,无意中看见 MaintainScrollPositionOnPostBack 属性。从E文来看,不正是我想要的吗?继续找下去。。。
原来MaintainScrollPositionOnPostBack是dotnet2.0新增属性,而Page.SmartNavigation属性也是 .NET Framework 2.0 版中的新属性,但已被否决,而改为使用 maintainScrollPositionOnPostBack 属性。在Asp.net2.0中,这些属性的设置都可以放到web.config文件的<pages>节。
这2个属性区别如下---------------
MaintainScrollPositionOnPostBack属性:
可选的 Boolean 属性。指定在页回发到服务器上时,是否将用户返回到客户端浏览器中的同一位置。如果为 False,则用户将在页回发时返回到页首。此属性是 .NET Framework 2.0 版中的新属性。默认值为 False。
smartNavigation 属性:
可选的 Boolean 属性。指定是否启用智能导航。智能导航需要 Microsoft Internet Explorer 5.5 版或更高版本。启用智能导航时,用户会体验到下列好处:
-
消除了导航时出现的闪烁现象。
-
滚动位置在不同页之间保持。
-
元素焦点在不同页之间保持。
-
浏览器的历史记录中只保留页的最近一次状态。
此属性是 .NET Framework 2.0 版中的新属性,但已被否决,而改为使用 maintainScrollPositionOnPostBack 属性。 默认值为 False。
详细信息可以参见 ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.chs/dv_ASPNETgenref/html/4123bb66-3fe4-4d62-b70e-33758656b458.htm