我的测试很让人失望。
   '<summary>
        '注册JS脚本,5秒钟之后自动跳转到另外页面
        '</summary>
        Public Function RegionJS(ByVal url As String) As String
            Dim javascript As StringBuilder = New StringBuilder
            javascript.Append("")
            javascript.Append("<script language=""JavaScript"">")
            javascript.Append(ControlChars.Lf)
            javascript.Append("<!--")
            javascript.Append(ControlChars.Lf)
            javascript.Append("function gotourl(){")
            javascript.AppendFormat("setTimeout(location.href='{0}',5000);", url)
            javascript.Append("}")
            javascript.Append("window.attachEvent(""onload"", gotourl);")
            javascript.Append("//-->")
            javascript.Append("</script>")
            If Not Page.IsClientScriptBlockRegistered("gourl") Then
                Page.RegisterClientScriptBlock("gourl", javascript.ToString)
            End If
        End Function在PAGE页面里注册这个JS脚本。原本意思是打开页面后5秒钟后自动跳转到url当中(但因为运行一次打开的速度就变快了。感觉就是打开这个页面才不到一秒就给我跳转了)。试了很多方式,效果都不知道样。都感觉不到页面有停顿5秒然后跳转的效果

解决方案 »

  1.   

    http://www.zforums.com.cn/msgs/PostMessage.aspx?postid=297&type=9注意看一下。一眨眼就跳转过去了。
      

  2.   

    现在还在主体内容的前面
    我看js中有一句window.attachEvent("onload", gotourl);
    onload就开始计时了,的确早了一点
      

  3.   

    window.attachEvent("unload", gotourl);
      

  4.   

    If Not Page.IsStartupScriptRegistered("gourl") Then
                    Page.RegisterStartupScript("gourl", javascript.ToString)
                End If这样移到后面页面结尾处也不行
      

  5.   

    直接            javascript.Append("<script language=""JavaScript"">")
                javascript.Append(ControlChars.Lf)
                javascript.Append("<!--")
                javascript.Append(ControlChars.Lf)
                javascript.AppendFormat("setTimeout(location.href='{0}',5000);", url)
                javascript.Append("//-->")
                javascript.Append("</script>")
    试试
      

  6.   

    直接把这一段脚本写在aspx页面的末尾行吗?