欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

瀏覽器后退按鈕不能返回到原來的網頁

黃文隆2年前14瀏覽0評論

瀏覽器后退按鈕不能返回到原來的網頁?

瀉藥

理論上不能,首先我們需要理解瀏覽back的機制。

一般來說在訪問頁面的時候,只要跳轉,URL就會發(fā)生變化,瀏覽器會以堆棧的形式記錄下你的訪問歷史。

而在back的時候,瀏覽器會訪問歷史堆棧里的上一條記錄。

那我們來看看有多少種方式可以跳轉。

JS實現(xiàn)的跳轉

例如從A打開的B,然后B上有一行window.location.href=C,那么頁面就會跳轉到C。

對于瀏覽器來說,這個過程一共3個頁面參與。但是對于用戶來說,由于B頁面存在的時間非常短,所以感覺只有2個頁面。在用戶點擊“back”時,用戶的目的是回到A,但是事實上返回到了B。而B頁面上又有向C跳轉的腳本,這樣用戶又回到了C。感覺是back無效。

這種狀況就會出現(xiàn)題主說的“拼手速”的方法,不停的點擊back,在B頁面加載完成執(zhí)行腳本前,再back就可以回到A。

如果禁用瀏覽器的JS,的確可以不用拼手速但是需要點擊兩下back就可以從C回到A,但是卻無法從A正常跳轉到C。

重定向實現(xiàn)的跳轉

這個屬于Http協(xié)議級別東西,例如301跳轉,這個跳轉是服務器強制的。這種是避免不了的。

Ajax局部刷新

這種方式在現(xiàn)代網站建設中比較常見,這種跳轉方式比起整個頁面刷新的體驗要好很多。可以由于局部刷新,本身并未發(fā)生實質性的頁面跳轉,永遠停留在第一個地址,瀏覽器也不會記錄history,自然連back鍵都不能點。

但是多數(shù)這種網站會用hashcode或者window.history.pushstate的方式來重寫URL使得瀏覽器可以紀錄一個history,然后再監(jiān)聽url的變化解析url更新頁面內容。

如果你遇到的網站沒有對URL做操作...放棄吧,你怎么也拯救不了這么爛的網站了。

當然,有的網站缺德的不用window.history.pushstate而是用window.history.replacestate,看著URL在一直變,但是back鍵就一直是灰的。