|
最近新版財付通正式上線了,需要將用戶切換到新版來,即需要將舊版的首頁實(shí)現(xiàn)自動跳轉(zhuǎn)的功能;首先,讓我們一起來了解下網(wǎng)頁自動跳轉(zhuǎn)的常用實(shí)現(xiàn)方式有哪些吧!
方法一:使用meta標(biāo)簽
Meta標(biāo)簽是html不可缺少的標(biāo)簽之一,是用來在HTML文檔中模擬HTTP協(xié)議的響應(yīng)頭報文;當(dāng)我們定義屬性http-equiv為refresh時,打開此WEB頁,瀏覽器將根據(jù)content規(guī)定的值在指定時間內(nèi)跳轉(zhuǎn)到相應(yīng)頁面,content=”秒數(shù);url=網(wǎng)址”就是定義停留多長時間后,跳轉(zhuǎn)到指定的網(wǎng)址;
示例:
以下的meta標(biāo)簽告訴瀏覽器,5秒鐘后,頁面將自動跳轉(zhuǎn)到新版財付通:
注意:
Meta元素只能在head元素使用;
Meta元素不會被渲染;
Meta元素不需要關(guān)閉標(biāo)簽;
方法二:使用javascript腳本
使用javascript跳轉(zhuǎn),有很多種實(shí)現(xiàn)方法,這里主要介紹window的location對象
1、location.href
例如:
1 | <script type="text/javascript"> |
2、location.replace
例如:
1 | <script type="text/javascript"> |
方法三:301 / 302 重定向
301 / 302是一種http狀態(tài)代碼,當(dāng)用戶向網(wǎng)站服務(wù)器發(fā)送瀏覽請求時,由服務(wù)器端返回的一種狀態(tài)代碼;表示請求的頁面被重定向到另一個地址;
Asp示例:
1 | Response.Status = "301 Moved Permanently" |
2 | Response.AddHeader "Location", "網(wǎng)址” |
Php示例:
1 | header("HTTP/1.1 301 Moved Permanently"); |
2 | header("Location: 網(wǎng)址"); |
Jsp示例:
1 | response.setStatus(301); |
2 | response.setHeader("Location","網(wǎng)址"); |
下面對這三種實(shí)現(xiàn)方式做個對比:

從上表中可以看出,meta方式和javascript跳轉(zhuǎn)方式會隨瀏覽器平臺不同,影響http請求頭中的referer信息,這會給一些數(shù)據(jù)的統(tǒng)計帶來誤差;同時,腳本跳轉(zhuǎn)的方式,除了location.replace外,其它的方式會“破壞”回退的功能,影響用戶體驗(yàn);所以對于這種新舊版切換的跳轉(zhuǎn),301重定向才是王道。
|