网站页面自动跳转实现方法PHP、JSP(下)

 更新时间:2010年08月01日 14:44:47   作者:  
很多时候我们需要Web页具备有自动跳转功能,例如,论坛中的用户登录、发帖及回复或留言簿中的留言和回复等操作成功后,若用户没有任何鼠标点击操作,过了一定的时间,页面自动跳转到预设的页面。

本文讨论网页自动跳转的几种实现方法。
方法一:使用meta标签meta标签是html不可或缺的标签之一,它负责提供文档的元信息,其参数主要有:
① http-equiv: 与 文档中数据相关的HTTP文件首部
② content: 与命名HTTP首部相关的数据
③ name: 文档描述
④ url: 与元信息相联系的URL当我们定义属性http-equiv为refresh,打开此Web页时系统将根据content规定的值在一定时间内跳转到相应页面,content="秒数;url=网址"就是定义了过多长时间跳转到指定的网址。以下meta标签告诉系统一秒钟后页面自动跳转到黑马在线动力:
<meta http-equiv="refresh" content="1;url=https://www.jb51.net/">
以上代码需要加在HTTP文档首部中,介于<head>与</head>之间,通常,meta标签是紧跟在<head>之后。若需要有多个meta标签,它们可以各占一行。
此法通用于任何环境,包含静态的网站空间。
方法二:使用header函数header函数是php内置函数中的HTTP相关函数之一,该函数送出HTTP协议标头到浏览器。使用它可以重定向URL,即令页面转向其他指定的网页。以下例子,执行后将自动打开黑马在线动力首页:
header("Location: https://www.jb51.net/");
必须注意,header函数只能用在页面代码中的<html>标签之前,亦即,HTTP首部尚未有其他任何标头(<head>)传送给浏览器之前,而且,此前页面也不能print或echo任何内容。换句话说,在页面的<html>出现前,程序只单纯地处理header事件。尽管有如此严格的要求,灵活地使用它,仍然可以达成页面的自动跳转功能,比如登录页面,通过判断用户提交的数据是否合法来决定页面跳转到何处。以下给出一个简单的例子:

复制代码 代码如下:

<?php
/* 登录程序 - 文件名:login.php
程序作用 - 判断用户登录口令 */
if($_POST['Submit']) {
session_start();
if($_POST['pws']=='123') { //若密码为 123
$_SESSION['passwd']='123'; //写入会话数据
header("Location:index.php"); //跳转到正常页面
}else{
header("Location:login.php"); //跳转到登录页面
}
}
//表单代码略(也可以用纯html代码写表单,若如此,代码应放在程序之后
?>
<?php
/* 检测会话数据 - 文件名:index.php
程序作用 - 检测会话数据中的密码是否为123,若不是,返回
登录页面 */
session_start();
if($_SESSION['passwd']!='123') header("Location:login.php");
//其他代码(纯HTML代码应写在程序之后)
?>

此法显然只能用于支持php的空间环境。
方法三:使用JavaScriptJS非常灵活,利用它可以做出功能非常强大的程序脚本,这里仅举一个简单的页面自动跳转的JS例子。以下代码执行后浏览器将自动转到黑马在线动力网站,该代码可放在页面中的任何合法的位置:
<script language="javascript" type="text/javascript"> window.location.href("https://www.jb51.net");</script>此代码适用于任何Web环境。若加入定时器,将更加妙不可言。

经常遇到页面自动跳转的问题 例如在有些网站需要在退出登录时出现一个提示页面
什么你正在退出只类客套话,有的还要作个倒记时
方法一:
<meta http-equiv="refresh" content="‘等待时间';URL=‘跳转页面'">
方法二:
这是一个js的应用。
测试代码:
复制代码 代码如下:

<input type=button value="点击开始" onClick="t=5">
<span id="view"></span>
<script>
t = -1; // 计数器
setInterval("testTime()",1000); // 启动1秒定时
function testTime() {
if(t<0) return; // 计数器值小于0,表示尚未开始倒计时
if(t == 0) // 计数器值为0,转向
location = "https://www.jb51.net";
view.innerHTML = "<b>"+t+"</b>"; // 显示倒计时
t--; // 计数器递减
}
function offTime() {
if(event.srcElement.value != "点击开始") { // 若不是倒计时开始
t = -1; // 初始计数器
view.innerHTML = ""; // 清空倒计时
}
}
document.onclick = offTime; // 启动点击事件监视
</script>

相关文章

  • js中<script> 标签中type值及其含义

    js中<script> 标签中type值及其含义

    在 HTML 中的 script 标签中,type 属性用于指定脚本的 MIME 类型,也即告诉浏览器该如何解释和处理脚本的内容,这篇文章主要介绍了js中<script> 标签中type值及其含义,需要的朋友可以参考下
    2024-12-12
  • JavaScript之promise_动力节点Java学院整理

    JavaScript之promise_动力节点Java学院整理

    这篇文章主要为大家详细介绍了JavaScript之promise的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • javascript的正则匹配方法学习

    javascript的正则匹配方法学习

    这篇文章主要为大家详细介绍了javascript的正则匹配方法,帮助大家更快更高效的学习javascript正则的相关内容,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • electron-builder打包配置详解

    electron-builder打包配置详解

    本文主要介绍了electron-builder打包配置详解,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Node.js模拟浏览器文件上传示例

    Node.js模拟浏览器文件上传示例

    这篇文章主要介绍了Node.js模拟浏览器文件上传的实现代码,需要的朋友可以参考下
    2014-03-03
  • 基于webpack-hot-middleware热加载相关错误的解决方法

    基于webpack-hot-middleware热加载相关错误的解决方法

    下面小编就为大家分享一篇基于webpack-hot-middleware热加载相关错误的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • javascript操纵OGNL标签示例代码

    javascript操纵OGNL标签示例代码

    这篇文章主要介绍了javascript 怎么操纵OGNL标签,需要的朋友可以参考下
    2014-06-06
  • js程序中美元符号$是什么

    js程序中美元符号$是什么

    $符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的
    2008-06-06
  • H5实现中奖记录逐行滚动切换效果

    H5实现中奖记录逐行滚动切换效果

    这篇文章主要为大家详细介绍了H5实现中奖记录逐行滚动切换效果,利用定时器实现中奖记录逐行展示,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • js利用canvas制作一个实时时钟

    js利用canvas制作一个实时时钟

    Canvas是HTML5中强大的绘图工具,它让我们能够在网页上创建各种精美的图形和动画效果,本文将向您展示如何使用Canvas制作一个实时时钟,感兴趣的可以了解下
    2023-08-08

最新评论