onpageshow 事件
定义和用法
onpageshow 事件在用户导航到网页时发生。
onpageshow 事件与 onload 事件类似,不同之处在于它发生在页面首次加载时的 onload 事件之后。此外,每次加载页面时都会发生 onpageshow 事件,而从缓存加载页面时不会发生 onload 事件。
如需确定页面是直接从服务器加载还是缓存,您可以使用 PageTransitionEvent 对象的 persisted 属性。如果页面被浏览器缓存,则此属性返回 true,否则返回 false(请参阅下面的更多实例)。
实例
例子 1
当用户导航到网页时执行 JavaScript:
<body onpageshow="myFunction()">
例子 2
查看页面是否被浏览器缓存:
function myFunction(event) { alert(event.persisted); }
语法
在 HTML 中:
<element onpageshow="myScript">
在 JavaScript 中:
object.onpageshow = function(){myScript};
在 JavaScript 中,使用 addEventListener() 方法:
object.addEventListener("pageshow", myScript);
注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法。
技术细节
冒泡: | 不支持 |
---|---|
可取消: | 不支持 |
事件类型: | PageTransitionEvent |
支持的 HTML 标签: | <body> |
DOM 版本: | Level 3 Events |
浏览器支持
表中的数字注明了完全支持该事件的首个浏览器版本。
事件 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onpageshow | 支持 | 11.0 | 支持 | 5.0 | 支持 |