我有一個非常簡單的jQuery移動應用:jQuery Mobile的阻止頁面呈現
/index.html
(包含一個鏈接到home.html
)/home.html
我想home.html
只對用戶可見誰滿足先決條件(例如本地存儲應包含logged=true
)。否則,我希望他們被重定向回index.html
。當然,當用戶點擊從index.html
的鏈接或者他/她通過URL直接導航到home.html
時,我希望發生這種情況。
爲了實施這其中的所有頁面inluded外部腳本我有以下幾點:
$(document).on('pagebeforecreate', function(e) {
if (!userIsLoggedIn() && e.target.id=='home_page') {
$.mobile.changePage('index.html');
}
});
注意,我home.html
開始與<div home-role="page" id="home_page">
此代碼的作品,但問題是,用戶可以立即看到home.html
的內容。我在API中看到pagebeforecreate
是在頁面轉換中被調用的最早的事件。調用changePage
雖然不會停止進一步的事件被呼叫在我不希望用戶看到的頁面上。
如何完全停止home.html
的渲染並立即將用戶重定向回index.html
?