如何从当前页面使用javascript获取主机网址

2020/10/20 04:41 · javascript ·  · 0评论

鉴于我在以下页面上:

http://www.webmail.com/pages/home.aspx

如何"http://www.webmail.com"使用JavaScript检索主机名()?

var host = window.location.hostname;

或可能

var host = "http://"+window.location.hostname;

或者如果您喜欢串联

var protocol = location.protocol;
var slashes = protocol.concat("//");
var host = slashes.concat(window.location.hostname);

要获取主机名: location.hostname

但是您的示例也在寻找该方案,因此location.origin似乎可以在Chrome中完成您想要的操作,但是Mozdev文档中并未提及。你可以用

location.protocol + '//' + location.hostname

如果您还想要端口号(当端口号不是80时),则:

location.protocol + '//' + location.host

您可以使用以下命令获取协议,主机和端口:

window.location.origin

浏览器兼容性

桌面

| Chrome                           | Edge  | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit)                            |
|----------------------------------|-------|-----------------|-------------------|-------|--------------------------------------------|
| (Yes)                            | (Yes) | (Yes)           | (Yes)             | (Yes) | (Yes)                                      |
| 30.0.1599.101 (possibly earlier) | ?     | 21.0 (21.0)     | 11                | ?     | 7 (possibly earlier, see webkit bug 46558) |

移动

| Android                          | Edge  | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile                              |
|----------------------------------|-------|------------------------|----------|--------------|--------------------------------------------|
| (Yes)                            | (Yes) | (Yes)                  | (Yes)    | (Yes)        | (Yes)                                      |
| 30.0.1599.101 (possibly earlier) | ?     | 21.0 (21.0)            | ?        | ?            | 7 (possibly earlier, see webkit bug 46558) |

所有浏览器兼容性均来自Mozilla开发人员网络

let path = window.location.protocol + '//' + window.location.hostname + ':' + window.location.port;

这应该工作:

window.location.hostname

根据您的需要,可以使用其中一个window.location属性。在您的问题中,您正在询问主机,可以使用window.location.hostname(例如www.example.com检索主机在您的示例中,您展示了一种称为origin的东西,可以使用window.location.origin(例如http://www.example.com进行检索

var path = window.location.origin + "/";

//result = "http://localhost:60470/"

我喜欢这个目的

window.location.href.split("/")[2] == "localhost:17000" //always domain + port

您可以将其应用于任何网址字符串

var url = "http://localhost:17000/sub1/sub2/mypage.html?q=12";
url.split("/")[2] == "localhost:17000"
url.split("/")[url.split("/").length-1] == "mypage.html?q=12"

从网址字符串中删除协议,域和路径(相对路径)

var arr = url.split("/");
if (arr.length>3)
   "/" + arr.splice(3, arr.length).join("/") == "/sub1/sub2/mypage.html?q=12"
本文地址:http://javascript.askforanswer.com/ruhecongdangqianyemianshiyongjavascripthuoquzhujiwangzhi.html
文章标签:
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!