傳遞參數我使用jQuery 1.1.1移動從電子郵件鏈接到jQuery的移動網絡應用程序
正如我的應用我建密碼檢索功能的一部分創建一個Web應用程序。如果用戶需要重新設置自己的密碼,他們填寫表格,並收到一封電子郵件,其中包括密碼重置頁面的地址和其他兩個參數作爲這樣一個鏈接:
www.mywebapp.com/demo.html#resetPassword?x=123&y=123
最初的問題: 當用戶點擊鏈接時,即使地址欄中的網址顯示爲:www.mywebapp.com/demo.html#resetPassword?x=123 & y = 123 I瞭解jQuery Mobile不支持散列後傳遞參數,所以我提出了以下解決方案。
用小不便的解決方案: 我總結了以下代碼,它讀取URL,抓住我的兩個參數和用戶密碼重置頁面重定向:
$(document).bind("pagebeforeshow", function() {
//cpe("parameter") will check whether the specified URL parameter exists
if(cpe("x") && cpe("y")){
//gpv("parameter") captures the value of the specified URL parameter
recovery.username=gpv("x");
recovery.token=gpv("y");
$.mobile.changePage("#resetPassword");
}
})
不便,因此我目前的問題是: 當用戶點擊電子郵件中的鏈接時,瀏覽器啓動並打開應用程序的主頁面,然後快速顯示#resetPassword頁面。我明白,這是因爲我改變了頁面
$.mobile.changePage("#resetPassword");
但是,我怎麼修改上面的代碼,使用戶不會看到主頁面可言,而直接進入到#resetPassword頁?
如果你還在尋找一個乾淨的解決這個問題,我最近建立了一個[插件](https://github.com/CameronAskew/jquery.mobile.paramsHandler)此 –