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 支持