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>