JavaScript學習5:BOM之location物件

連江偉發表於2015-04-30

        Location是BOM物件之一,它提供了與當前視窗中載入的文件有關的資訊,還提供了一些導航功能。事實上,location物件是window物件的屬性,也是document物件的屬性:所以window.location和document.location是等效的。

        鑑於這個物件的屬性方法較少,在這裡就多介紹一下:

        首先來看location物件的屬性

        

        Location物件的方法只有三個,如下圖所示

     

        一個簡單的跳轉頁面例子      

<span style="font-size:18px;">location.href='http://www.baidu.com';
alert(location.href);</span>

        在web開發中,我們經常需要獲取諸如?id&search=ok這種型別的URL的鍵值對,那麼通過location物件,我們可以寫一個函式,來一一獲取。

<span style="font-size:18px;">function getArgs(){
	//建立一個存放鍵值對的陣列
	var args=[];
	//去除?號
	var qs=location.search.length>0?location.search.substring (1):'';
	//按&字串拆分陣列
	var items=qs.split('&');
	var item =null,name=null,value=null;
	//遍歷
	for(var i=0;i<items;i++){
		item=items[i].split('=');
		name=item[0];
		value=item[1];
		//把鍵值對存放到陣列中去
		args[name]=value;
	}
	return args;
}

var  args=getArgs(); //呼叫函式
alert(args['id']);
alert(args['search']);</span>

        關於location物件的方法就不再詳細說明了,基本都是跳轉到指定的URL,這裡就說一點,就是那個reload()方法,看如下程式碼     

<span style="font-size:18px;">location.reload();
location.reload(true);</span>

        這兩者的區別是在方法中傳入了一個布林值的引數,前者是最為有效的重新載入方式,但是這個頁面有可能是從快取中拿出來的,而後者則是強制載入,就是隻從伺服器源頭重新載入頁面。

        至此,關於location物件的介紹就結束了,location物件主要是操作頁面的跳轉,以及對URL的內容進行相關操作和設定。

相關文章