使用JS判斷頁面是首次被加載還是刷新

1 利用window.name屬性在頁面刷新時不會重置判斷(在該屬性空置的情況下可使用)

公司主營業(yè)務:成都做網(wǎng)站、成都網(wǎng)站設計、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出潞城免費做網(wǎng)站回饋大家。

if(window.name == ""){
 console.log("首次被加載");
 window.name = "isReload"; // 在首次進入頁面時我們可以給window.name設置一個固定值 
}else if(window.name == "isReload"){
  console.log("頁面被刷新");
}

2 使用sessionStorage或cookie來判斷

與window.name實現(xiàn)方法類似在首次加載時設置一個固定值 之后判斷即可

這里以sessionStorage來為例

if(sessionStorage.getItem("isReload")){
   console.log("頁面被刷新");
}else{
 console.log("首次被加載");
 sessionStorage.setItem("isReload", true)
}

3 可以使用window.chrome對象 (該方法只在谷歌瀏覽器中可用 其他瀏覽器無chrome對象)

該對象提供了一個loadTimes() 方法 執(zhí)行該方法我們會得到一個有關頁面性能的對象
其中有一個navigationType屬性可以幫助我們判斷頁面是加載還是刷新
它有兩個值 Reload(刷新) 和 Other(首次加載)

所以我們可以通過if判斷:

if(sessionStorage.getItem("isReload")){
   console.log("頁面被刷新");
}else{
 console.log("首次被加載");
 sessionStorage.setItem("isReload", true)
}

使用window.chrome.loadTimes方法會報警告

isreload.html:20 [Deprecation] chrome.loadTimes() is deprecated, instead use standardized API: Navigation Timing 2. https://www.chromestatus.com/features/5637885046816768.

官方已經(jīng)說明該方法被棄用了 讓我們使用 標準化API: Navigation Timing 2
所有上面代碼需要改下:

if (window.performance.navigation.type == 1) {
 console.log("頁面被刷新")
}else{
 console.log("首次被加載")
}

總結(jié)

以上所述是小編給大家介紹的使用JS判斷頁面是首次被加載還是刷新,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對創(chuàng)新互聯(lián)網(wǎng)站的支持!

文章名稱:使用JS判斷頁面是首次被加載還是刷新
標題鏈接:http://bm7419.com/article12/iioggc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、移動網(wǎng)站建設、品牌網(wǎng)站設計外貿(mào)建站、搜索引擎優(yōu)化、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設