頁(yè)面跳轉(zhuǎn)相信大家都不陌生,這個(gè)在實(shí)際的項(xiàng)目開(kāi)發(fā)過(guò)程中也是經(jīng)常會(huì)用到,所以特意在此總結(jié)幾種方法分享給大家,希望可以幫助到大家!
PHP header()函數(shù)跳轉(zhuǎn)
PHP的header()函數(shù)非常強(qiáng)大,其中在頁(yè)面url跳轉(zhuǎn)方面也調(diào)用簡(jiǎn)單,使用header()直接跳轉(zhuǎn)到指定url頁(yè)面,這時(shí)頁(yè)面跳轉(zhuǎn)是302重定向:
$url = "http://www.helloweba.com/";
header( "Location: $url" );
我們有可能會(huì)遇到特殊的跳轉(zhuǎn)時(shí),比如網(wǎng)站改版有個(gè)頁(yè)面地址要做301重定向,當(dāng)然你可以通過(guò)web配置rewrite來(lái)實(shí)現(xiàn),但現(xiàn)在我要告訴大家,可以使用php的header()函數(shù)做301跳轉(zhuǎn),代碼如下:
//301跳轉(zhuǎn)
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: $url" );
Meta設(shè)置跳轉(zhuǎn)
html中的meta信息里可以直接設(shè)置跳轉(zhuǎn),可以設(shè)置跳轉(zhuǎn)延遲時(shí)間和跳轉(zhuǎn)url,經(jīng)常應(yīng)用,比如支付完了告訴用戶支付成功并跳轉(zhuǎn)到訂單頁(yè)面,代碼非常簡(jiǎn)單,就在<head>中加上一句:
<meta http-equiv="refresh" content="5;url=http://www.helloweba.com">
以上代碼表示在5秒鐘后頁(yè)面會(huì)自動(dòng)跳轉(zhuǎn)到http://www.helloweba.com。
Javascript跳轉(zhuǎn)
Javascript跳轉(zhuǎn)也非常簡(jiǎn)單,直接一句話:
<script>
window.location.href="http://www.helloweba.com";
</script>
注意,上面這段代碼直接跳轉(zhuǎn)后,在目標(biāo)頁(yè)面地址中是獲取不到來(lái)路(referer,也叫來(lái)源)的,在實(shí)際項(xiàng)目中,遇到有客戶要求跳轉(zhuǎn)要帶來(lái)路(即目標(biāo)網(wǎng)頁(yè)可以獲取到頁(yè)面從哪里跳轉(zhuǎn)來(lái)的),這時(shí),我們可以用javascript模擬一次點(diǎn)擊,然后跳轉(zhuǎn)就滿足了客戶的需求。
<script>
//有來(lái)路
var aa = document.createElement("a");
aa.setAttribute("href","http://www.helloweba.com");
var bodys=document.getElementsByTagName("body")[0];
bodys.appendChild(aa);
aa.click();
</script>
當(dāng)然,實(shí)際開(kāi)發(fā)中我們可以把后面兩種方式整合到PHP中去,便于適用各種跳轉(zhuǎn)需求。