使用 JavaScript 获取当前 URL?

我想要的只是获取网站 URL。不是从链接获取的 URL。在页面加载中,我需要能够获取网站的完整,当前的 URL,并将其设置为一个变量,以便我随意使用。

答案

采用:

window.location.href

如评论中所述,下面的行有效,但对于 Firefox 而言是错误的。

document.URL;

请参阅DOMString 类型的 URL,只读

URL 信息访问

JavaScript 为您提供了许多方法来检索和更改当前 URL,该 URL 显示在浏览器的地址栏中。所有这些方法都使用Location对象,该对象是Window对象的属性。您可以创建一个具有当前 URL 的新Location对象,如下所示:

var currentLocation = window.location;

基本网址结构

<protocol>//<hostname>:<port>/<pathname><search><hash>
  • protocol:协议名称,用于访问 Internet 上的资源。 (HTTP(不带 SSL)或 HTTPS(带 SSL))

  • hostname:主机名指定拥有资源的主机。例如, www.stackoverflow.com 。服务器使用主机名提供服务。

  • 端口:端口号,用于识别 Internet 或其他网络消息到达服务器时将转发到的特定进程。

  • pathname:路径提供有关 Web 客户端要访问的主机内特定资源的信息。例如/index.html

  • 查询:查询字符串紧随路径部分,并提供资源可用于某些目的的信息字符串(例如,用作搜索的参数或要处理的数据)。

  • hash: URL 的锚点部分,包括井号(#)。

使用这些Location对象属性,您可以访问所有这些 URL 组件以及它们可以设置或返回的内容:

  • href-整个网址
  • protocol -URL 的协议
  • host -URL 的主机名和端口
  • hostname -URL 的主机名
  • port-服务器用于 URL 的端口号
  • pathname -URL 的路径名
  • search -URL 的查询部分
  • hash -URL 的锚点部分

我希望你能得到答案。

使用window.location对与当前框架关联的位置对象进行读写访问。如果只想以只读字符串的形式获取地址,则可以使用document.URL ,它应该包含与window.location.href相同的值。

获取当前页面的 URL:

window.location.href

好的,使用纯 JavaScript 即可轻松获得当前页面的完整 URL 。例如,在此页面上尝试以下代码:

window.location.href;
// use it in the console of this page will return
// http://stackoverflow.com/questions/1034621/get-current-url-in-web-browser"

window.location.href属性返回当前页面的 URL。

document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>

<body>
  <h2>JavaScript</h2>
  <h3>The window.location.href</h3>
  <p id="root"></p>
</body>

</html>

同样值得一提的是:

  • 如果需要相对路径,只需使用window.location.pathname

  • 如果您想获取主机名,则可以使用window.location.hostname ;

  • 如果需要单独获取协议,请使用window.location.protocol

    • 另外,如果您的页面具有hash标签,则可以像以下这样获取它: window.location.hash

所以window.location.href一次处理所有... 基本上:

window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href;
    //true

如果已经在窗口范围内,也不需要使用window ...

因此,在这种情况下,您可以使用:

location.protocol

location.hostname

location.pathname

location.hash

location.href

使用JavaScript获取当前URL

要获取路径,可以使用:

console.log('document.location', document.location.href);
console.log('location.pathname',  window.location.pathname); // Returns path only
console.log('location.href', window.location.href); // Returns full URL

打开Developer Tools ,在控制台中键入以下内容,然后按Enter

window.location

例如:以下是当前页面上结果的屏幕截图。

在此处输入图片说明

从这里获取您的需求。 :)

使用: window.location.href

如上所述,更新window.location时, document.URL 不会更新 。参见MDN

  • 使用window.location.href获取完整的 URL。
  • 使用window.location.pathname获取离开主机的 URL。

您可以使用以下命令使用哈希标签获取当前 URL 位置

JavaScript:

// Using href
 var URL = window.location.href;

 // Using path
 var URL = window.location.pathname;

jQuery 的

$(location).attr('href');