javascript 控制页面跳转的几种方法
第一种:window.location.href方式
<script language="javascript" type="text/javascript"> window.location.href="login.jsp?backurl="+window.location.href; </script>
第二种: window.history.go(num)方式
<script language="javascript"> alert("返回"); window.history.back(-1); </script>
第三种:window.navigate方式跳转
<script language="javascript"> window.navigate("top.jsp"); </script>
第四种:self.location方式实现页面跳转,和下面的top.location有小小区别
<script language="JavaScript"> self.location='top.htm'; </script>
第五种:top.location方式
<script language="javascript"> alert("非法访问!"); top.location='xx.jsp'; </script>
第六种:window.loction.replace方式
window.loction.replace方式实现页面跳转,注意跟第一种方式的区别
<script language="javascript">window.location.replace("target.aspx");</script>
有3个jsp页面(1.aspx, 2.aspx, 3.aspx),进系统默认的是1.aspx,当我进入2.aspx的时候, 2.aspx里面用window.location.replace("3.aspx");
与用window.location.href ("3.aspx");
从用户界面来看是没有什么区别的,但是当3.aspx页面有一个"返回"按钮,调用window.history.go(-1); wondow.history.back();方法的时候,一点这个返回按钮就要返回2.aspx页面的话,区别就出来了,当用 window.location.replace("3.aspx");连到3.aspx页面的话,3.aspx页面中的调用 window.history.go(-1);wondow.history.back();方法是不好用的,会返回到1.aspx。
==============================================
--隔多少秒后自动跳转到其它页(js脚本)
方法一:
在<head></head>之间加入js:
<script language="javascript"> var secs = 3; //倒计时的秒数 var URL ; function Load(url){ URL = url; for(var i=secs;i>=0;i--) { window.setTimeout('doUpdate(' + i + ')', (secs-i) * 1000); } } function doUpdate(num) { document.getElementById('ShowDiv').innerHTML = '将在'+num+'秒后自动跳转到主页' ; if(num == 0) { window.location = URL; } } </script>
然后在<body>里面加上<body onload="Load('index.asp')"> index.asp为自己要跳转的页面。
在<body></body>之间加上<div id="ShowDiv"></div>
方法二:
代码如下:
<p style="text-indent: 2em; margin-top: 30px;"> 系统将在 <span id="time">5</span> 秒钟后自动跳转至新网址,如果未能跳转,<a href="http://www.jb51.net" title="点击访问">请点击</a>。</p> <script type="text/javascript"> delayURL(); function delayURL() { var delay = document.getElementById("time").innerHTML; var t = setTimeout("delayURL()", 1000); if (delay > 0) { delay--; document.getElementById("time").innerHTML = delay; } else { clearTimeout(t); window.location.href = "http://www.test.jsp"; } } </script>