Location對象、History對象

Location對象

        Window對象的location屬性引用的是Location對象,它表示窗口中當前顯示的內容的URL,Document對象的location屬性也引用Location對象,window.location === document.lacation; //truehtml

        Document對象還有一個URL屬性,document.URL屬性表示文檔首次載入後保存該文檔的URL的 靜態字符串。若是定位到文檔中的片斷標識符如#tag,location對象會作相應的更新,而document.URL屬性則不變;
解析URL
Location 對象屬性:
hash             設置或返回從井號 (#) 開始的 URL(錨)。
host              設置或返回主機名和當前 URL 的端口號。
hostname     設置或返回當前 URL 的主機名。
href              設置或返回完整的 URL(location.toString()返回href屬性的值)。
pathname     設置或返回當前 URL 的路徑部分。
port              設置或返回當前 URL 的端口號。
protocol       設置或返回當前 URL 的協議。
search          設置或返回從問號 (?) 開始的 URL(查詢部分)。
Location 對象方法:
assign()   加載新的文檔。
reload()   從新加載當前文檔。
replace() 用新的文檔替換當前文檔(沒法‘後退’,替換掉以前的文檔)
        若是檢測到瀏覽器不支持某些特性,能夠用location.replace()來重定向載入不含該特性的版本,如:if(!XMLHttpRequest){ location.replace('staticpage.html');}這裏使用相對URL,指相對當前文檔的目錄來解析
        使瀏覽器跳轉到新頁面,最簡單的方法是location = '絕對URL地址或相對URL';
        使文檔滾動到標識符指定的位置,location = '#idname',特殊標識符#top滾到文檔頂部(前提是文檔內不存在id爲top的元素)
function urlArgs(){
var args = {};
var queay = location.search.slice(1);
queay = queay.replace(/</g,"&lt;").replace(/>/g,"&gt;");
var pairs = queay.splice('&');
for(var i = 0;i<pairs.length;i++){
var pos = pairs[i].indexOf('=');
if(pos==-1){continue;};
var name = pairs[i].slice(0,pos);
var value = pairs[i].slice(pos+1);
value = decodeURIComponent(value);
args[name] = value;
}
return args;
}

History對象:Window對象的history屬性引用的是History對象
History 對象屬性
history.length 返回瀏覽器歷史列表中的 URL 數量。
 
History 對象方法
history.back() 加載 history 列表中的前一個 URL。
history.forward() 加載 history 列表中的下一個 URL。
history.go(number|URL) 加載 history 列表中的某個具體頁面,URL 參數使用的是要訪問的 URL,或 URL 的子串
相關文章
相關標籤/搜索