使用JS判斷頁面是首次被加載還是刷新
1 利用window.name屬性在頁面刷新時(shí)不會(huì)重置判斷(在該屬性空置的情況下可使用)
if(window.name == ""){ console.log("首次被加載"); window.name = "isReload"; // 在首次進(jìn)入頁面時(shí)我們可以給window.name設(shè)置一個(gè)固定值 }else if(window.name == "isReload"){ console.log("頁面被刷新"); }
2 使用sessionStorage或cookie來判斷
與window.name實(shí)現(xiàn)方法類似在首次加載時(shí)設(shè)置一個(gè)固定值 之后判斷即可
這里以sessionStorage來為例
if(sessionStorage.getItem("isReload")){ console.log("頁面被刷新"); }else{ console.log("首次被加載"); sessionStorage.setItem("isReload", true) }
3 可以使用window.chrome對(duì)象 (該方法只在谷歌瀏覽器中可用 其他瀏覽器無chrome對(duì)象)
該對(duì)象提供了一個(gè)loadTimes() 方法 執(zhí)行該方法我們會(huì)得到一個(gè)有關(guān)頁面性能的對(duì)象
其中有一個(gè)navigationType屬性可以幫助我們判斷頁面是加載還是刷新
它有兩個(gè)值 Reload(刷新) 和 Other(首次加載)
所以我們可以通過if判斷:
if(sessionStorage.getItem("isReload")){ console.log("頁面被刷新"); }else{ console.log("首次被加載"); sessionStorage.setItem("isReload", true) }
使用window.chrome.loadTimes方法會(huì)報(bào)警告
isreload.html:20 [Deprecation] chrome.loadTimes() is deprecated, instead use standardized API: Navigation Timing 2. https://www.chromestatus.com/features/5637885046816768.
官方已經(jīng)說明該方法被棄用了 讓我們使用 標(biāo)準(zhǔn)化API: Navigation Timing 2
所有上面代碼需要改下:
if (window.performance.navigation.type == 1) { console.log("頁面被刷新") }else{ console.log("首次被加載") }
總結(jié)
以上所述是小編給大家介紹的使用JS判斷頁面是首次被加載還是刷新,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
three.js中g(shù)sap動(dòng)畫庫實(shí)現(xiàn)物體的動(dòng)畫
本文主要介紹了three.js中g(shù)sap動(dòng)畫庫實(shí)現(xiàn)物體的動(dòng)畫,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07JavaScript TypeScript實(shí)現(xiàn)貪吃蛇游戲完整詳細(xì)流程
這篇文章主要介紹了JavaScript TypeScript實(shí)現(xiàn)貪吃蛇游戲流程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-09-09Javascript使用uploadify來實(shí)現(xiàn)多文件上傳
本篇文章主要介紹了Javascript使用uploadify來實(shí)現(xiàn)多文件上傳,具有一定的參考價(jià)值,有需要的可以了解一下。2016-11-11JavaScript實(shí)現(xiàn)簡(jiǎn)單的Markdown語法解析器
Markdown 是一種輕量級(jí)標(biāo)記語言, 它允許人們使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成有效的 XHTML(或者HTML)文檔。本文將利用JavaScript實(shí)現(xiàn)簡(jiǎn)單的Markdown語法解析器,感興趣的可以了解一下2023-03-03