1. 程式人生 > >js 獲取當前URL資訊

js 獲取當前URL資訊

document.location 這個物件包含了當前URL的資訊
location.host 獲取port號
location.hostname 設定或獲取主機名稱
location.href 設定或獲取整個URL
location.port設定或獲取URL的埠號
location.search 設定或獲取href屬性中跟在問號後面的部分 如:?aaa=123&bbb=456$ccc=789

js中window.location的應用

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
https://i.cnblogs.com/EditPosts.aspx?opt=1
我們可以用javascript獲得其中的各個部分
1, window.location.href
整個URl字串(在
瀏覽器
中就是完整的位址列)
本例返回值: http://www.x2y2.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere
2,window.location.protocol
URL 的協議部分
本例返回值:http:
3,window.location.host
URL 的主機部分
本例返回值:www.x2y2.com
4,window.location.port
URL 的埠部分
如果採用預設的80埠(update:即使添加了:80),那麼返回值並不是預設的80而是空字元
本例返回值:""
5,window.location.pathname
URL 的路徑部分(就是檔案地址)
本例返回值:/fisker/post/0703/window.location.html
6,window.location.search
查詢(引數)部分
除了給
動態語言
賦值以外,我們同樣可以給靜態頁面,並使用javascript來獲得相信應的引數值
本例返回值:?ver=1.0&id=6
7,window.location.hash
錨點==========================================
document.href="http://www.jb51.net"
document.location="http://www.jb51.net"
window.location="http://www.jb51.net"
只是屬於包含的問題
一個是window,一個是document
location 是個物件 比如本頁的document.location 和window.location的屬性有
location.hostname = community.csdn.net
location.href = http://community.csdn.net/Expert/topic/4033/4033372.xml?temp=2.695864E-02
location.host = community.csdn.net
location.hash =
location.port =
location.pathname = /Expert/topic/4033/4033372.xml
location.search = ?temp=2.695864E-02
location.protocol = http:
可見href 是location的屬性 類別是string 。
[document物件]
  該物件是window和frames物件的一個屬性,是顯示於視窗或框架內的一個文件。
  屬性
  alinkColor 活動連結的顏色(ALINK)
  anchor 一個HTMI錨點,使用<A NAME=>標記建立(該屬性本身也是一個物件)
  anchors array 列出文件錨點物件的陣列(<A NAME=>)(該屬性本身也是一個物件)
  bgColor 文件的背景顏色(BGCOLOR)
  cookie 儲存於cookie.txt檔案內的一段資訊,它是該文件物件的一個屬性
  fgColor 文件的文字顏色(<BODY>標記裡的TEXT特性)
  form 文件中的一個窗體(<FORM>)(該屬性本身也是一個物件)
  forms anay 按照其出現在文件中的順序列出窗體物件的一個數組(該屬性本身也是一個物件)
  lastModified 文件最後的修改日期
  linkColor 文件的連結的顏色,即<BODY>標記中的LINK特性(連結到使用者沒有觀察到的文件)
  link 文件中的一個<A HREF=>標記(該屬性本身也是一個物件)
  links array 文件中link物件的一個數組,按照它們出現在文件中的順序排列(該屬性本身也是一個物件)
  location 當前顯示文件的URL。使用者不能改變document.location(因為這是當前顯示文件的位置)。但是,
可以改變 window.location (用其它文件取代當前文件)window.location本身也是一個物件,而
document.location不是物件
  referrer 包含連結的文件的URL,使用者單擊該連結可到達當前文件
  title 文件的標題((TITLE>)
  vlinkColor 指向使用者已觀察過的文件的連結文字顏色,即<BODY>標記的VLINK特性
  方法
  clear 清除指定文件的內容
  close 關閉文件流
  open 開啟文件流
  write 把文字寫入文件
  writeln 把文字寫入文件,並以換行符結尾
[window物件]
  它是一個頂層物件,而不是另一個物件的屬性即瀏覽器的視窗。
  屬性
  defaultStatus 預設的狀態條訊息
  document 當前顯示的文件(該屬性本身也是一個物件)
  frame 窗口裡的一個框架((FRAME>)(該屬性本身也是一個物件)
  frames array 列舉視窗的框架物件的陣列,按照這些物件在文件中出現的順序列出(該屬性本身也是一個
物件)
  history 視窗的歷史列表(該屬性本身也是一個物件)
  length 視窗內的框架數
  location 視窗所顯示文件的完整(絕對)URL(該屬性本身也是一個物件)不要把它與如document.location
混淆,後者是當前顯示文件的URL。使用者可以改變window.location(用另一個文件取代當前文件),但卻不能改變
document.location (因為這是當前顯示文件的位置)
  name 視窗開啟時,賦予該視窗的名字
  opener 代表使用window.open開啟當前視窗的指令碼所在的視窗(這是Netscape Navigator 3.0beta 3所引
入的一個新屬性)
  parent 包含當前框架的視窗的同義詞。frame和window物件的一個屬性
  self 當前視窗或框架的同義詞
  status 狀態條中的訊息
  top 包含當前框架的最頂層瀏覽器視窗的同義詞
  window 當前視窗或框架的同義詞,與self相同
  方法
  alert() 開啟一個Alert訊息框
  clearTimeout() 用來終止setTimeout方法的工作
  close() 關閉視窗
  confirm() 開啟一個Confirm訊息框,使用者可以選擇OK或Cancel,如果使用者單擊OK,該方法返回true,單擊
Cancel返回false
  blur() 把焦點從指定視窗移開(這是Netscape Navigator 3.0 beta 3引入的新方法)
  focus() 把指定的視窗帶到前臺(另一個新方法)
  open() 開啟一個新視窗
  prompt() 開啟一個Prompt對話方塊,使用者可向該框鍵入文字,並把鍵入的文字返回到指令碼
  setTimeout() 等待一段指定的毫秒數時間,然後執行指令事件處理程式事件處理程式
  Onload() 頁面載入時觸發
  Onunload() 頁面關閉時觸發
區別:使用者不能改變document.location(因為這是當前顯示文件的位置)。但是,可以改變window.location (用其它文件取代當前文件)window.location本身也是一個物件,而document.location不是物件 

 

摘自“:https://zhidao.baidu.com/question/748214233127882532.html