如何判断页面是通过链接打开还是通过后退按钮返回打开的?

window.performance.navigation.type包含三个值:
0 : TYPE_NAVIGATE (用户通过常规导航方式访问页面,比如点一个链接,或者一般的get方式)
1 : TYPE_RELOAD (用户通过刷新,包括JS调用刷新接口等方式访问页面)
2 : TYPE_BACK_FORWARD (用户通过后退按钮访问本页面)

<script>
window.addEventListener('pageload', function (event) {
if(event.persisted || window.performance && window.performance.navigation.type == 0){
console.log('page:init,navigation type: '+ window.performance.navigation.type);
}
if(event.persisted || window.performance && window.performance.navigation.type == 2){
console.log('page:reload,navigation type: '+ window.performance.navigation.type);
}
},false);
</script>

IE9以上的浏览器,Chrome和Firefox上都可以

上一篇:mysql-`=`和`<=>`之间有性能差异吗?


下一篇:Android应用程式-应用程式可运作,但运作缓慢