無痕模式下localstorage報錯解決方案
關於無痕模式這裡就不多介紹,基本就是不留下上網瀏覽的記錄,比如cookie、下載歷史和表單歷史等等。
如果搜尋頁面使用localstrorage保持使用者的最近10條搜尋記錄,當瀏覽器調節到無痕模式時候,發現搜尋頁面連熱搜詞這種介面直出的資料都沒有顯示,很明顯有程式碼錯誤了。一番除錯發現是移動端瀏覽器無痕模式不支援localstorage,pc模擬器無痕模式竟然支援本地儲存。
手機Safari瀏覽器中具體表現是:
localStorage物件仍然存在
但是setItem會報異常:QuotaExceededError
getItem和removeItem直接忽略
這也就是為什麼移動端手機程式碼報錯
於是要加一個判斷支不支援本地儲存的方法或者乾脆提示使用者關閉無痕模式。
[JavaScript] 純文字檢視 複製程式碼// 判斷是不是無痕模式 storageTest : function(storage) { if(!!storage) { try { storage.setItem("key", "value"); storage.removeItem("key"); return true; } catch(e) { return false; } } else { return false; } }
相關文章
- Safari無痕模式下,storage被禁用問題模式
- 安裝sass報錯解決方案
- Linux下錯誤解決方案Linux
- Laravel安裝horizon報錯解決方案Laravel
- win安裝wordcloud報錯解決方案Cloud
- electron npm install 報錯解決方案NPM
- minio報錯SignatureDoesNotMatch解決方案
- ubuntu下git報錯fatal: The remote end hung up unexpectedly解決方案UbuntuGitREM
- Django(21)migrate報錯的解決方案Django
- npm install 安裝報錯解決方案NPM
- Android Studio 報錯解決方案 一Android
- ORA-01756報錯的解決方案
- CentOS 6安裝Oracle報錯解決方案CentOSOracle
- MySQL 啟動服務報錯解決方案MySql
- vue tsx 原生屬性報錯解決方案Vue
- Oracle 條件索引 case when 報錯解決方案Oracle索引
- 關於Support for password authentication 報錯的解決方案
- matplotlib中文報錯問題及解決方案
- TNS-12555報錯的解決方案
- ORA-03206報錯的解決方案
- Server Application Error報錯資訊的解決方案ServerAPPError
- Safari Private 模式下 localStorage 的問題模式
- 微信中無法下載app的解決方案APP
- JNI命令列下編譯錯誤解決方案命令列編譯
- 學校報告廳無線覆蓋解決方案
- Python報錯:PermissionError: [Errno 13] Permission denied解決方案PythonError
- 【安裝Android Studio報錯之解決方案】Android
- Unity3D啟動報錯的解決方案Unity3D
- 無痕埋點方案,現有方案調研 | 掘金技術徵文
- mybatis報錯解決MyBatis
- mac 下PyCharm執行報錯問題解決MacPyCharm
- Windows 系統 NPM run watch-poll 報錯解決方案WindowsNPM
- /system/bin/sh: screenrecord: inaccessible or not found 報錯解決方案
- C語言中幾種報錯型別的解決方案C語言型別
- 應用儲存過程執行報錯解決方案儲存過程
- JMETER java.net.SocketException: Connection reset 報錯解決方案JMeterJavaException
- mac Os下全域性安裝vue cli3.0出現的報錯解決方案MacVue
- Dubbo廣播模式下報錯:Can't assign requested address解決辦法模式