前端頁面沒有狀態,當從現有頁面跳轉到另乙個頁面時,自然會執行新頁面的指令碼,而跳轉點後面的**往往被有意無意的忽略。這種特點讓開發者形成一種習慣,無論是設計時,還是除錯時,總是慣性的認為,當前頁面的指令碼**執行到跳轉點處就結束了。
反過來,會讓人誤以為:如果本頁面的**還在執行,就意味著沒有頁面跳轉。
但,這是誤解。
在除錯下面這段**時,就犯了相關的錯誤。
$(function()
……varpage_info
= restoretextinputpageinfofromsession();
console
.
log(
page_info
); alertobj(
page_info
);
// 設定頁面資訊
document
.title =
page_info
.page_title;
$('.settingphone-title').html(
page_info
.bar_title);
$('.hinttext').html(
page_info
.text_prompt);
……
}
雖然alertobj(page_info);
被執行,但頁面已經發生了跳轉。剛開始沒有意識到這一點,一直想不明白alertobj(page_info);語句列印出來的page_info資訊為何不正確,同時,發生了頁面跳轉的現象,而alertobj(page_info);之後,沒有頁面跳轉語句。所以,這個現象一直讓人迷惑不解,後來才明白,是前面的backtologinpage();函式內發生了頁面跳轉(window.location.href=./login.html),並且,跳轉前修改了page_info資訊。
跳轉頁面的方法
1 直接的事件跳轉 window location href 你所要跳轉的頁面 這種的一般都是絕對位址 window.location.href 2 開啟新頁面跳轉 帶參 let routeurl this router resolve 此處也可以路由攜帶傳參 query window open r...
js關閉本頁面,父頁面指定跳轉或重新整理
關閉本頁面,跳轉到京東 response.setcharacterencoding gbk printwriter out response.getwriter out.print self.opener.location.href 關閉本頁面,重新整理父頁面 response.setcharact...
超時後頁面跳轉至登入頁面的解決方法
由於使用window.showmodaldialog和window.showmodelessdialog都不能直接獲取前乙個視窗或對話方塊的window物件,所以對這兩個方法做一下包裝,見下 var ns var sfeatures sfeatures window.showmodaldialog ...