JS中各種跳轉解析
原文:https://www.cnblogs.com/wmcoder/p/5688988.html
Javascript中的location.href有很多種用法,主要如下:
當前頁面打開URL地址:
①self.location.href="/url"
②location.href="/url"
③windows.location.href="/url"
④this.location.href="/url"
父級頁面打開URL地址:
①parent.location.href="/url"
頂層頁面打開URL地址:
①top.location.href="/url"
如果頁面中有自定義frame,那麽可將parent、self、top換為自定義frame的名稱,效果是在frame窗口打開URL地址
"window.location.href"、"location.href"是本頁面跳轉
"parent.location.href"是上一層頁面跳轉
"top.location.href"是最外層的頁面跳轉
刷新當前頁面:
①window.location.href=window.location.href;當有提交數據時,window.location.href=window.location.href;則是向指定的url提交數據。
②window.location.reload();當有提交數據時,window.location.reload()會提示是否提交
舉例說明:
如果A,B,C,D都是html,D是C的iframe,C是B的iframe,B是A的iframe
若是D頁面中js跳轉:
"window.location.href"、"location.href":D頁面跳轉
"parent.location.href":C頁面跳轉
"top.location.href":A頁面跳轉
若D頁面中存在form:
<form>: form提交後D頁面跳轉
<form target="_blank">: form提交後彈出新頁面
<form target="_parent">: form提交後C頁面跳轉
<form target="_top"> : form提交後A頁面跳轉
若是D頁面執行頁面刷新:
"parent.location.reload();": C頁面刷新 (當然,也可以使用子窗口的 opener 對象來獲得父窗口的對象:window.opener.document.location.reload(); )
"top.location.reload();": A頁面刷新
JS中各種跳轉解析