当前位置: 首页 > 工具软件 > pageshow > 使用案例 >

js load 和 pageshow的区别

太叔俊侠
2023-12-01

load 触发

  1. a标签的超链接
  2. f5或者刷新按钮
  3. 前进后退按钮
    但是在 火狐中,有个特点,有个往返缓存,这个缓存不仅保存者页面数据,还保存了DOM和javaScript的状态;实际将整个页面保存到内存里面
    所以此时后退按钮不能刷新页面

pageshow触发

在页面显示时候触发,无论页面是否来着缓存。
在重新加载页面中,pageshow 会在load事件触发后触发;
根据事件对象中的 persisted 来判断是非由缓存中的页面触发的pageshow事件;
事件在window对象上面

window.addEventListener('pageshow',function(e){
	if(e.persisted){ //是否由缓存中的页面触发
	}
})
 类似资料: