现在的位置: 首页 > 综合 > 正文

网页中的智能导航

2013年03月13日 ⁄ 综合 ⁄ 共 1619字 ⁄ 字号 评论关闭

智能导航在网页的操做中起到很重要的作用,下面介绍了几种智能导航的方法:

智能导航的作用:

·                 消除导航导致的闪烁。

·                 从一页移动到另一页时保持滚动位置。

·                 保持导航之间的元素焦点。

·                 在浏览器的历史记录中只保留最后一页的状态。

智能导航最适用于需要频繁回发但是其可是内容在返回时不会发生显著更改的 ASP.NET 页。在决定是否将该属性设置为 true 时,请仔细考虑这一点。

1.      Page.SmartNavigation 属性  参见 MSDN CHINA

2.      在页面上写JavaScript来控制页面的滚动.

下面是网上可以查到的一个RetainScrollPosition函数

    Private Sub RetainScrollPosition()

 

        Dim saveScrollPosition As New StringBuilder

        Dim setScrollPosition As New StringBuilder

 

        RegisterHiddenField("__SCROLLPOS", "0")

 

        saveScrollPosition.Append("<script language='javascript'>")

        saveScrollPosition.Append("function saveScrollPosition() {")

        saveScrollPosition.Append(" document.forms[0].__SCROLLPOS.value = thebody.scrollTop;")

        saveScrollPosition.Append("}")

        saveScrollPosition.Append("thebody.onscroll=saveScrollPosition;")

        saveScrollPosition.Append("</script>")

 

        RegisterStartupScript("saveScroll", saveScrollPosition.ToString())

 

        If (Page.IsPostBack = True) Then

 

            setScrollPosition.Append("<script language='javascript'>")

            setScrollPosition.Append("function setScrollPosition() {")

            setScrollPosition.Append(" thebody.scrollTop = " & Request("__SCROLLPOS") & ";")

            setScrollPosition.Append("}")

            setScrollPosition.Append("thebody.onload=setScrollPosition;")

            setScrollPosition.Append("</script>")

 

            RegisterStartupScript("setScroll", setScrollPosition.ToString())

 

        End If

只要在Page_Load调用这个函数就可以了,而且在html中将body id命名为thebody

 

scottwater.com上面有篇Scroll Page,这篇文章建了一个类来完成智能导航的功能,你也可以引用这个类来完成你的网页定位.

在我的Blog上的关于Scroll PageCode.

抱歉!评论已关闭.