window.location
可以簡寫為location
1.開啟一個新的url
,並在瀏覽器的歷史中生成一條記錄:
location.assign('http://www.baidu.com/')
window.location = 'http://www.baidu.com/'
location.href = 'http://www.baidu.com/'
複製程式碼
2.設定location
物件的屬性可以更改當前頁面的url
,並在瀏覽器的歷史中生成一條記錄:
【與HTML5新增的pushState不同的是,pushState也會改變url以及相應歷史條目,但pushState不會向服務端傳送請求,History.pushState()】
假設當前頁面的初始URL
是http://www.baidu.com/article/
。
//將URL修改為http://www.baidu.com/article/#part1
location.hash = "#part1";
複製程式碼
//將URL修改為http://www.baidu.com/article/?q=baidu
location.search = "?q=baidu";
複製程式碼
//將URL修改為http://www.baidu.com/book/
location.pathname = "book";
複製程式碼
//將URL修改為http://www.google.com/article/
location.hostname = "www.google.com";
複製程式碼
//將URL修改為http://www.baidu.com:8080/article/
location.port = 8080;
複製程式碼
3.location.replace
改變URL
,並禁止瀏覽器後退操作
setTimeout(function(){
location.replace('http://www.baidu.com/')
},3000)
複製程式碼
頁面重新定向到http://www.baidu.com/
後,瀏覽器的後退按鈕會處於禁用狀態。
4.location.reload()
重新載入當前頁面。
如果呼叫location.reload()
時不傳遞引數,頁面會以最有效的方式重新載入,也就是會從瀏覽器快取中重新載入。
如果想強制從伺服器重新載入,需要傳遞引數true
。
location.reload()
location.reload(true)
複製程式碼