jQuery Mobile - 页面转换事件
描述
当我们使用以下事件类型从一个页面转换到另一个页面时触发 −
pagebeforeshow 事件在过渡动画开始前触发"toPage"时触发。
pageshow 事件在过渡动画发生后触发"toPage"时触发。
pagebeforehide 事件在过渡动画开始前触发"fromPage"时触发。
pagehide 事件在过渡动画发生后触发"fromPage"时触发。
示例
以下示例描述了在 jQuery Mobile 框架中使用页面转换事件。
<!DOCTYPE html>
<head>
<title>Page Transition Events</title>
<meta name = "viewport" content = "width = device-width, initial-scale = 1">
<link rel = "stylesheet" href = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src = "https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script>
$(document).on("pagebeforeshow","#page2",function() {
alert("The pagebeforeshow event has been fired and second page is yet to be shown.");
});
$(document).on("pageshow","#page2",function() {
alert("The pageshow event has been fired and second page is displaying now.");
});
$(document).on("pagebeforehide","#page2",function() {
alert("The pagebeforehide event has been fired and second page is going to be hide now.");
});
$(document).on("pagehide","#page2",function() {
alert("The pagehide event has been fired and second page is hidden now.");
});
</script>
</head>
<body>
<div data-role = "page" id = "page1">
<div data-role = "header">
<h2>Header</h2>
</div>
<div data-role = "main" class = "ui-content">
<p>This is first page</p>
<a href = "#page2">Page Two</a>
</div>
<div data-role = "footer">
<h2>Footer</h2>
</div>
</div>
<div data-role = "page" id = "page2">
<div data-role = "header">
<h2>Header</h2>
</div>
<div data-role = "main" class = "ui-content">
<p>This is second page</p>
<a href = "#page1">Page One</a>
</div>
<div data-role = "footer">
<h2>Footer</h2>
</div>
</div>
</body>
</html>
输出
让我们执行以下步骤,看看上面的代码是如何工作的 −
将上述 html 代码保存为服务器根文件夹中的 jqm_page_transition_event.html 文件。
将此 HTML 文件打开为 http://localhost/jqm_page_transition_events.html,将显示以下输出。

