URL即統一資源定位符 (Uniform Resource Locator, URL),完整的URL由這幾個部分構成:
scheme://host:port/path?query#fragment
scheme:通信協議,常用的http,ftp,maito等。
host:主機,服務器(計算機)域名系統 (DNS) 主機名或 IP 地址。
port:端口號,整數,可選,省略時使用方案的默認端口,如http的默認端口為80。
path:路徑,由零或多個"/"符號隔開的字符串,一般用來表示主機上的一個目錄或文件地址。
query:查詢,可選,用於給動態網頁(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技術制作的網頁)傳遞參數,可有多個參數,用"&"符號隔開,每個參數的名和值用"="符號隔開。
fragment:信息片斷,字符串,用於指定網絡資源中的片斷。例如一個網頁中有多個名詞解釋,可使用fragment直接定位到某一名詞解釋。(也稱為錨點)
下面我們舉例一個URL,然後獲得它的各個組成部分。
http://www.jb51.net/newsDetail.php?id=65
window.location.href
可以獲得整個URL字符串(在浏覽器中就是完整的地址欄)。
var test = window.location.href; alert(test);
程序返回 http://www.jb51.net/newsDetail.php?id=65
window.location.protocol
可以獲得 URL 的協議部分
var test = window.location.protocol; alert(test);
程序返回 http:
window.location.host
可以獲得 URL 的主機部分
var test = window.location.host; alert(test);
程序返回 www.jb51.net
window.location.port
可以獲得 URL 的端口部分
var test = window.location.port; alert(test);
如果采用默認的80端口(update:即使添加了:80),那麼返回值並不是默認的80而是空字符。
window.location.pathname
獲得 URL 的路徑部分(就是文件地址)
var test = window.location.pathname; alert(test);
window.location.search
獲得查詢(參數)部分,除了給動態語言賦值以外,我們同樣可以給靜態頁面,並使用javascript來獲得相信應的參數值。
var test = window.location.search; alert(test);
window.location.hash
獲得錨點。
var test = window.location.hash; alert(test);
以上所述就是本文的全部內容了,希望大家能夠喜歡。