转载

用HTML/JS/PHP方式实现页面延时跳转

WEB开发中经常会遇到页面跳转或延时跳转的需求,掌握各种页面跳转方式非常必要。

以下是我总结有用HTML/JS/PHP三类方式实现跳转的方法,例子皆为三秒后跳转到 index.php 页面。

1,HTML 方法:

HEAD 中添加 <meta> 标签

<meta http-equiv=”refresh” content=”3;url=’index.php’” >

2,JS 控制跳转方法

A.Location 直接加链接方式

<script type="text/javascript">    setTimeout("window.location=('index.php'",3000);  </script>

B.Location.href 方式

<script type="text/javascript">    setTimeout("window.location.href='index.php'",3000);  </script>

C.Location.assign 方式

<script type="text/javascript">    setTimeout("window.location.assign('index.php')",3000);  </script>

D.Location.replace 方式(注意页面是被“替换”掉了,不会在浏览器的历史记录被查询到)

<script type="text/javascript">    Widdow.location.replace(‘index.php’);  </script>

E.JS 历史记录 go(n) 方式( n 表示对历史记录相对当前页的前进步数, n 为负数表示返回以前的页面)

<script type="text/javascript">    window.history.go(n);  </script>

F.JS 历史记录 go(url) 方式(注意 url 必须是历史记录内的,不然页面不会进行跳转)

<script type="text/javascript">    window.history.go(‘index.php’);  </script>

G.JS window.open 方式,通过打开一个新窗口,实现跳转。(其第二个属性为可选目标选项,值可以是 frame id/_blank 等,第三个选项为新弹出窗口的具体设置选项,包括 height/width 等)

<script type="text/javascript">    setTimeout("window.open('index.php',target,args)",3000);  </script>

3 PHP 脚本控制跳转方式,通过改写 HTTP 头信息来进行跳转

A.header refresh 方式:

Header(“refresh:3;url=’index.php’”);

B. header location 方式 :

sleep(3);  Header(“location:index.php”);

要注意这种方式会导致无法进入当前页面。即若当前在 register.php 页面链接到 login.php 页面时, login.php 页面内用 header location 方式跳转,页面会从 register.php 页面直接等待三秒跳转到 index.php ,不会进入到 login.php 页面,这是因为 header location 会对页面进行重定向。

如有错误,欢迎指正,谢谢。

正文到此结束
Loading...