本文详细列举了JavaScript中实现页面跳转的五种核心方法,包括直接修改location.href、使用history.back()返回、navigate()导航、self.location重定向及top.location强制跳转。此外,还介绍了两种实现秒数倒计时后自动跳转页面的代码方案,涵盖基础脚本与HTML结合的实现方式,适用于需要用户确认或引导的场景。
JavaScript实现页面跳转的五种常用方法
第一种方法是通过修改当前窗口的URL来实现跳转。
具体实现代码如下:
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>第二种方法是利用浏览器历史记录返回上一页。
具体实现代码如下:
<script language="javascript">
alert("返回");
window.history.back(-1);
</script>第三种方法是使用navigate函数进行导航跳转。
具体实现代码如下:
<script language="javascript">
window.navigate("top.jsp");
</script>第四种方法是修改当前窗口的self属性实现跳转。
具体实现代码如下:
<script language="JavaScript">
self.location='top.htm';
</script>第五种方法是强制顶层窗口进行跳转,通常用于处理非法访问或权限不足的情况。
具体实现代码如下:
<script language="javascript">
alert("非法访问!");
top.location='xx.jsp';
</script> JavaScript实现定时自动跳转页面的技巧
除了上述直接跳转方式,还可以实现隔指定秒数后自动跳转到其他页面的功能。
该功能需要在页面的head部分嵌入JavaScript代码。
具体实现代码如下:
<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标签中添加onload事件,调用Load函数并指定目标页面,例如index.asp。
同时在body标签内部添加一个div元素,用于显示倒计时信息,例如<div id="ShowDiv"></div>。
第二种定时跳转方法结合了HTML与JavaScript,实现更友好的用户提示。
具体实现代码如下:
<p style="text-indent: 2em; margin-top: 30px;">
系统将在 <span id="time">5</span> 秒钟后自动跳转至新网址,如果未能跳转,<a href="https://www.jb51.net" title="点击访问">请点击</a>。</p>
<script type="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 = "https://www.jb51.net";
}
}
</script>