1. 河豚號 > 生活百科 >

location.replace算不算跳轉(js刪除history指定記錄)

location 對象是最有用的 BOM 對象之一,它提供了與當前窗口中加載的文檔有關(guān)的信息,還提供了一些導航功能。事實(shí)上,location 對象是很特別的一個(gè)對象,因為它既是 window 對象的屬性,也是 document 對象的屬性,換句話(huà)說(shuō),window.location 和 document.location 引用的是同一個(gè)對象。location 對象的用處不只表現在它保存著(zhù)當前文檔信息,還表現在它將 URL 解析為獨立的片段,讓開(kāi)發(fā)人員可以通過(guò)不同的屬性訪(fǎng)問(wèn)這些片段。

帶你走進(jìn)JavaScript世界系列——location對象

 

location 對象的屬性列表

查詢(xún)字符串參數

雖然通過(guò)上面的屬性可以訪(fǎng)問(wèn)到 location 對象的大多數信息,但其中訪(fǎng)問(wèn) URL 包含的查詢(xún)字符串的屬性并不方便。盡管 location.search 返回從問(wèn)號到 URL 末尾的所有內容,但卻沒(méi)有辦法逐個(gè)訪(fǎng)問(wèn)其中的每個(gè)字符串參數。因此,可以像下面這樣創(chuàng )建一個(gè)函數,用于解析查詢(xún)字符串,然后返回所有參數的一個(gè)對象:

帶你走進(jìn)JavaScript世界系列——location對象

 

獲取查詢(xún)字符串通用函數

位置操作

使用 location 對象可以通過(guò)很多方式來(lái)改變?yōu)g覽器的位置。首先,也是最常用的方式,就是使用 assign() 方法并為其傳遞一個(gè) URL ,如下:

帶你走進(jìn)JavaScript世界系列——location對象

 

assign() 方法示例

上面的代碼可以立即打開(kāi)新的 URL 并在瀏覽器的歷史記錄中生成一條記錄。如果是將 location.href 或 window.location 設置為一個(gè) URL 值,也會(huì )以該值調用 assign() 方法。下面的代碼與顯式調用 assign() 方法效果完全一樣:

帶你走進(jìn)JavaScript世界系列——location對象

 

window.location 和 location.href

在這些改變?yōu)g覽器位置的方法中,最常用的是設置 location.href 屬性。

另外,修改 location 對象的其他屬性也可以改變當前加載的頁(yè)面,下面將展示修改屬性來(lái)改變 URL 值:

帶你走進(jìn)JavaScript世界系列——location對象

 

location 中一些其他屬性的修改

上述任何一種方式修改 URL 之后,瀏覽器的歷史記錄中就會(huì )生成一條新記錄,因此可以通過(guò)瀏覽器的 “后退” 按鈕回到前一個(gè)頁(yè)面。要禁止這種行為,可以使用 replace() 方法。這個(gè)方法只接收一個(gè)參數,即需要導航到的 URL,結果會(huì )使瀏覽器位置改變,但不會(huì )在歷史記錄中生成記錄,在調用 replace() 方法之后,就不能回到前一個(gè)頁(yè)面了,例:

帶你走進(jìn)JavaScript世界系列——location對象

 

location.replace() 方法示例

與位置有關(guān)的最后一個(gè)方法是 reload() ,其作用是重新加載當前顯示的頁(yè)面。如果調用 reload() 時(shí)不傳遞任何參數,頁(yè)面就會(huì )以最有效的方式重新加載,如果頁(yè)面從上次請求以來(lái)并沒(méi)有改變過(guò),頁(yè)面就會(huì )從瀏覽器緩存中重新加載。如果需要強制從服務(wù)器重新加載,可以給該方法傳遞參數 true :

帶你走進(jìn)JavaScript世界系列——location對象

 

reload() 方法示例

位于 reload() 調用之后的代碼可能會(huì )也可能會(huì )不執行,這主要取決于當時(shí)網(wǎng)絡(luò )狀態(tài)或系統資源等,因此,最好將 reload() 放在代碼最后一行。

本文由網(wǎng)上采集發(fā)布,不代表我們立場(chǎng),轉載聯(lián)系作者并注明出處:http://seensnowboarding.com/shbk/39469.html

聯(lián)系我們

在線(xiàn)咨詢(xún):點(diǎn)擊這里給我發(fā)消息

微信號:15705946153

工作日:9:30-18:30,節假日休息

国产精品亚洲w码日韩中文|国产高清露脸孕妇系列|久久国语露脸国产精品|久久久777精品电影网影网|欧美高大丰满freesex