1.php header()函数跳转
PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向:
$url = "http://www.helloweba.com/"; header( "Location: $url" );
我们有可能会遇到特殊的跳转时,比如网站改版有个页面地址要做301重定向,当然你可以通过web配置rewrite来实现,但现在我要告诉大家,可以使用php的header()函数做301跳转,代码如下:
//301跳转 header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: $url" );
2.Meta设置跳转
html中的meta信息里可以直接设置跳转,可以设置跳转延迟时间和跳转url,经常应用,比如支付完了告诉用户支付成功并跳转到订单页面,代码非常简单,就在<head>中加上一句:
<meta http-equiv="refresh" content="5;url=http://www.helloweba.com">
以上代码表示在5秒钟后页面会自动跳转到http://www.helloweba.com。
3.Javascript跳转
Javascript跳转也非常简单,直接一句话:
<script> window.location.href="http://www.helloweba.com"; </script>
注意,上面这段代码直接跳转后,在目标页面地址中是获取不到来路(referer,也叫来源)的,在实际项目中,遇到有客户要求跳转要带来路(即目标网页可以获取到页面从哪里跳转来的),这时,我们可以用javascript模拟一次点击,然后跳转就满足了客户的需求。
<script> //有来路 var aa = document.createElement("a"); aa.setAttribute("href","http://www.helloweba.com"); var bodys=document.getElementsByTagName("body")[0]; bodys.appendChild(aa); aa.click(); </script>
试了试上面这段代码无法实现跳转。原因?
bodys.appendChild(aa);
是在 body 之前运行的,这个时候,document.body 不存在,即为 null ,所以 document.body.appendChild 就会报告上面的错误。
解决方案:
把SCRIPT 代码包含到 <body></body> 里面或者放到body标签后面即可正常运行.
5.a链接跳转
<a href=”http://www.vt.com ?a=n&b=c”></a>