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

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