在WEB開發(fā)中,許多開發(fā)者都比較喜歡使用javascript來獲取當(dāng)前url網(wǎng)址,本文就此為大家總結(jié)一下比較常用獲取URL的javascript實(shí)現(xiàn)代碼
URL即統(tǒng)一資源定位符 (Uniform Resource Locator, URL),完整的URL由這幾個(gè)部分構(gòu)成:
scheme://host:port/path?query#fragment
scheme:通信協(xié)議,常用的http,ftp,maito等。
host:主機(jī),服務(wù)器(計(jì)算機(jī))域名系統(tǒng) (DNS) 主機(jī)名或 IP 地址。
port:端口號(hào),整數(shù),可選,省略時(shí)使用方案的默認(rèn)端口,如http的默認(rèn)端口為80。
path:路徑,由零或多個(gè)"/"符號(hào)隔開的字符串,一般用來表示主機(jī)上的一個(gè)目錄或文件地址。
query:查詢,可選,用于給動(dòng)態(tài)網(wǎng)頁(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技術(shù)制作的網(wǎng)頁)傳遞參數(shù),可有多個(gè)參數(shù),用"&"符號(hào)隔開,每個(gè)參數(shù)的名和值用"="符號(hào)隔開。
fragment:信息片斷,字符串,用于指定網(wǎng)絡(luò)資源中的片斷。例如一個(gè)網(wǎng)頁中有多個(gè)名詞解釋,可使用fragment直接定位到某一名詞解釋。(也稱為錨點(diǎn))
下面我們舉例一個(gè)URL,然后獲得它的各個(gè)組成部分。
http://www.companysz.com/newsDetail.php?id=65
window.location.href
可以獲得整個(gè)URL字符串(在瀏覽器中就是完整的地址欄)。
- var test = window.location.href;
- alert(test);
程序返回http://www.companysz.com/newsDetail.php?id=65
window.location.protocol
可以獲得 URL 的協(xié)議部分
- var test = window.location.protocol;
- alert(test);
程序返回 http:
window.location.host
可以獲得 URL 的主機(jī)部分
- var test = window.location.host;
- alert(test);
程序返回www.companysz.com
window.location.port
可以獲得 URL 的端口部分
- var test = window.location.port;
- alert(test);
如果采用默認(rèn)的80端口(update:即使添加了:80),那么返回值并不是默認(rèn)的80而是空字符。
window.location.pathname
獲得 URL 的路徑部分(就是文件地址)
- var test = window.location.pathname;
- alert(test);
window.location.search
獲得查詢(參數(shù))部分,除了給動(dòng)態(tài)語言賦值以外,我們同樣可以給靜態(tài)頁面,并使用javascript來獲得相信應(yīng)的參數(shù)值。
- var test = window.location.search;
- alert(test);
window.location.hash
獲得錨點(diǎn)。
- var test = window.location.hash;
- alert(test);
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
新聞熱點(diǎn)
疑難解答
圖片精選