JS監(jiān)聽瀏覽器關(guān)閉、刷新及切換標簽頁觸發(fā)事件代碼示例
蠻簡單的東西,知道就會,不知道就不會,沒什么邏輯可言。簡單記錄一下,只為加深點兒印象。
visibilitychange
visibilitychange可以監(jiān)聽到瀏覽器的切換標簽頁。
直接上代碼:
<script> document.addEventListener('visibilitychange', documentVisibilityChange) function documentVisibilityChange() { if(document.visibilityState === "hidden") { console.log('當(dāng)前頁簽隱藏,即打開新頁簽') } if(document.visibilityState === "visible") { console.log('當(dāng)前頁簽顯示,即打開當(dāng)前頁簽') } } </script>
beforeunload
beforeunload可以監(jiān)聽到頁面的關(guān)閉,頁簽切換不會觸發(fā)
- 關(guān)閉瀏覽器窗口的時候觸發(fā)
- 通過點擊當(dāng)前地址欄或收藏夾進入另一個頁面時觸發(fā)(注意不是打開新頁簽)
- 刷新瀏覽器時觸發(fā)
- 重新賦值window.location.href的值的時候觸發(fā)
- 通過 form input type="submit"按鈕提交一個具有指定action的表單的時候觸發(fā)(原生事件)
可能還有其他情況,大家感興趣可以再去了解一下,我只是在瀏覽器刷新時用到了
<script> window.addEventListener('beforeunload', windowBeforeUnload) function windowBeforeUnload() { console.log('觸發(fā)beforeunload --->>>') } </script>
附:頁面鏈接跳轉(zhuǎn)不記錄歷史
function fnUrlReplace(href) { if (href && /^#|javasc/.test(href) === false) { if (history.replaceState) { history.replaceState(null, document.title, href.split('#')[0] + '#'); location.replace(''); } else { location.replace(href); } } }; fnUrlReplace(targetURL); fnUrlReplace后面直接寫一個鏈接,這樣既可以跳轉(zhuǎn)又不會記錄歷史,而且還做了兼容性處理,兼容到IE6。
總結(jié)
到此這篇關(guān)于JS監(jiān)聽瀏覽器關(guān)閉、刷新及切換標簽頁觸發(fā)事件的文章就介紹到這了,更多相關(guān)JS監(jiān)聽瀏覽器關(guān)閉刷新內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS實現(xiàn)動畫兼容性的transition和transform實例分析
這篇文章主要介紹了JS實現(xiàn)動畫兼容性的transition和transform方法,結(jié)合實例形式分析了transition和transform方法針對手機端瀏覽器兼容性問題上的相關(guān)處理技巧,需要的朋友可以參考下2016-12-12JavaScript實現(xiàn)的前端AES加密解密功能【基于CryptoJS】
這篇文章主要介紹了JavaScript實現(xiàn)的前端AES加密解密功能,涉及javascript基于CryptoJS插件進行AES加密解密操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2018-08-08JS前端框架關(guān)于重構(gòu)的失敗經(jīng)驗分享
關(guān)于重構(gòu)JS前端框架的失敗經(jīng)驗接下來與大家分享一下,感興趣的你可不要錯過了哈,畢竟是經(jīng)驗之談哈2013-03-03JavaScript實現(xiàn)輪播圖方法(邏輯清晰一看就懂)
這篇文章主要給大家介紹了關(guān)于JavaScript實現(xiàn)輪播圖方法的相關(guān)資料,JS輪播圖的實現(xiàn)核心是使用JavaScript來控制圖片的切換和顯示,配合HTML和CSS完成布局和樣式設(shè)置,文中介紹的方法邏輯清晰一看就懂,需要的朋友可以參考下2023-12-12layui 動態(tài)設(shè)置checbox 選中狀態(tài)的例子
今天小編就為大家分享一篇layui 動態(tài)設(shè)置checbox 選中狀態(tài)的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09刷新頁面實現(xiàn)方式總結(jié)(HTML,ASP,JS)
多種方法實現(xiàn)頁面的刷新代碼2008-11-11