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,将显示以下输出。