js判断页面是刷新还是首次加载

技术, 问答  ·  2024-10-29

js判断页面是刷新还是首次加载?performance.navigation  (performance.navigation.type)  已弃用,取而代之的写法是什么?

window.performance 是W3C性能小组引入的新的API,目前IE9以上的浏览器都支持。如何使用js判断页面是刷新还是首次加载?我们可以使用window.performance这个方法。


在这里插入图片描述


但是 performance.navigation  (performance.navigation.type  已弃用,取而代之的写法是什么呢?

判断页面的导航通过刷新还是其他页面跳转的方式。

window.performance.getEntriesByType("navigation") ——获取浏览器的导航信息

window.performance.getEntriesByType("navigation")[0].type ——获取到浏览器的导航类型


以前的 performance.navigation  (performance.navigation.type)  已弃用。

window.performance.getEntriesByType("navigation")[0].type

在JavaScript中,可以通过检查performance.navigation的type属性来判断页面是否被刷新。如果type的值是1,则表示页面是通过用户手动刷新的。

以下是一个示例代码


被弃用的写法

if (performance.navigation.type == performance.navigation.type.TYPE_RELOAD) {
    console.log('页面是通过手动刷新的');
}


新写法:

if (window.performance.getEntriesByType("navigation")[0].type == 'reload') {
    console.log('页面是通过手动刷新的');
}


还有,判断一个页面是从其他页面点进来的,我们可以判断:document.referer.


评论