日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于返回按钮的事情

發布時間:2023/12/2 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于返回按钮的事情 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

?在微信的項目涉及到多個不同的項目間跳轉那么頭部的返回按鈕怎么辦呢?

在項目之間跳轉還有在微信菜單進入頁面時我們用了一個中轉頁進行參數處理和頁面跳轉判斷

目前要用到code,userId等從后端寫好的帶參數的url到前端獲取然后去調用后端的一個校驗code和獲取userID如果有userID就請求跳轉接口

如果沒有就跳轉到登錄頁注冊綁定

然后跳轉到另外一個項目的那么我們得用到window.location.replace跳轉過去

用了window.location.replace后我們就沒有window.history了

那么問題來了產品要求跳過去的項目得保留返回按鈕

那么我們可以window.history.length的多少判斷有沒有返回的內容咯(不同瀏覽器值不一樣chrome沒有歷史內容的時候是1)

理論上當window.history.length小于沒歷史內容條數的時候可以跳到別的一些自己定義的界面

但是你要在跳到的這個頁面A里面點了里面的鏈接然后跳轉到B頁面后再返回頁面A那么他的window.history.length會增加的那么判斷就不準確了我們window.history.back()沒有反應了

這時候應該要用document.referrer === ''來判斷他有沒來源

window.history.length>1 && document.referrer !== ''?window.history.back():(typeof(WeixinJSBridge)=="undefined" ? window.close() : WeixinJSBridge.call('closeWindow'));像我寫的是這樣的(沒法解決上面的問題第一次是可以的但是重B頁面返回后就不可以了咋整啊郁悶!~)

document.referrer有一些兼容性問題的不過用在H5下應該還好具體看如下

操作IE6IE7IE8IE9FirefoxChromeOperaSafari
直接在地址欄輸入URL“”“”“”“”“”“”“”“”
從書簽訪問URL“”“”“”“”“”“”“”“”
從頁面A點擊超鏈接,跳轉到頁面B(target=”_self”)
從頁面A點擊超鏈接,跳轉到頁面B(target=”_blank”)
從頁面A右鍵單擊超鏈接,在新標簽頁中打開頁面B-“”
從頁面A右鍵單擊超鏈接,在新窗口中打開頁面B“”
拖動鏈接到地址欄“”無法拖動無法拖動“”“”“”“”“”
拖動鏈接到標簽欄-“”“”“”“”“”“”“”
使用瀏覽器的前進、后退按鈕
JS 修改 location.href“”“”“”
JS 使用 window.open“”“”“”“”
服務器重定向(302跳轉)定向之前的頁面定向之前的頁面定向之前的頁面定向之前的頁面定向之前的頁面定向之前的頁面定向之前的頁面定向之前的頁面
頁面 Meta Refresh“”“”“”“”“”轉向頁轉向頁轉向頁

上表中的“√”表示能正常取到 referrer,”” 表示 referrer 為空。

除了 IE 外,其它瀏覽器都是目前官網上能下載到的最新版本,其中 Safari 同時測試了 Windows 版和 Mac 版,結論一樣。

另外還有一些情況未做測試,例如點擊 Flash 跳轉時各瀏覽器下能否保持 referrer 等。

上表中大部分情況是符合預期的,不過似乎也有幾處需要注意的:

1、在 Safari 中,右鍵打開鏈接會丟失 referrer;
2、在 IE 中,修改 location.href 或使用 window.open 打開頁面會丟失 referrer(IE 9 有一點例外,使用 location.href 跳轉不會丟失 referrer);
3、使用 meta 跳轉時,IE / Firefox 下會丟失 referrer。

最后,一個簡單的結論是:如果你需要通過 document.referrer 采集頁面訪問來源,最好不要使用 JS 跳轉或打開新窗口,也不要使用 meta 跳轉。

?

上面的數據是

參考網站:http://www.jb51.net/article/52349.htm得出的我就搬過來記錄一下

?

?最后的解決方法我還是用的其他方法實現了

用的是sessionStorage.setItem來存狀態判斷

?

========================================

有網友說:可以變通一點,go之前注冊一個onbeforeunload事件,如果能夠go就會觸發這個事件,否則不會觸發。如果只是錨點跳轉,頁面并不真正離開,那就判斷一下hash的變化。

不知道可行不可行

轉載于:https://www.cnblogs.com/lichuntian/p/6078534.html

總結

以上是生活随笔為你收集整理的关于返回按钮的事情的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。