色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

為什么我的米4瀏覽器返回鍵按一下就變成刷新了要同時按兩下才能返回

錢浩然2年前12瀏覽0評論

為什么我的米4瀏覽器返回鍵按一下就變成刷新了要同時按兩下才能返回?

瀉藥

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

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

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

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

JS實現的跳轉

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

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

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

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

重定向實現的跳轉

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

Ajax局部刷新

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

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

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

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