ABLo 发表于 2022-3-5 10:19:20

博客首页返回空:设置或返回当前URL的主机名

首先要知道这个对象以及这个对象中的一些属性:

href:设置或返回完整的url.如本博客首页返回

host:设置或返回主机名和当前的URL的端口号。本博客首页返回

:设置或返回当前URL的主机名。本博客首页返回

hash:设置或返回从井号(#)开始的URL(锚)。本博客首页返回空

http://tt.ccoox.cn/data/attachment/forum/20220305/1646446760886_0.png

:设置或返回当前URL的路径部分。本博客首页返回//

port:设置或返回当前URL的端口号。本博客首页返回空

:设置或返回当前URL的协议。本博客首页返回http:

:设置或返回从问号(?)开始的URL(查询部分)

http://tt.ccoox.cn/data/attachment/forum/20220305/1646446760886_1.png

对象属性图示:图片来自慕课网

http://tt.ccoox.cn/data/attachment/forum/20220305/1646446760886_2.png

的href属性存放的是文档的完整URL,其他属性则分别描述了URL的各个部分。这些属性与对象(或Area对象)的URL属性非常相似。当一个对象被转换成字符串,href属性的值被返回。这意味着你可以使用表达式来替代.href。不过对象表示的是文档中的超链接,对象表示的却是浏览器当前显示的文档的URL(或位置)

<p><pre>    var s = location.toString();
console.log(s);
#result
//http://www.cnblogs.com/wymninja/</pre></p>
对象的这些属性都是可读可写的url提取工具,如果改变了文档的.href,则浏览器会载入新的页面。同样如果改变了.hash,则页面会跳转到新的锚点,但此时页面不会重载。

对象还有三个方法:()、()、()

():加载新的文档

():可以重新装载当前文档

():可以装载一个新文档而无须为它创建一个新的历史记录。也就是说天外神坛源码网,在浏览器的历史列表中,新文档将替换当前文档。这样就不能通过【返回】按钮返回当前文档了。

注意:

不要混淆对象的属性和对象的对象。前者引用一个对象,后者只是一个只读字符串url提取工具,并不具有对象的任何特性。.与.URL是同义的。但是,当存在服务器重定向时,.包含的是已经装载的URL,而.href包含的则是原始请求的文档的URL。

所以要获取浏览器URL中查询字符串的参数。也就是.部分。以慕课网图片为例就是?=8&amp;=86中的8和86!!!!然后就利用如下代码:

http://tt.ccoox.cn/data/attachment/forum/20220305/1646446760886_5.png

<p><pre>    function getQuery(name){
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);//从?之后开始匹配如getQuery(courseid)返回一个数组["courseid=8","","8","&",index:0,input:"courseid=8"]
   if (r!=null) return unescape(r); return null;
}</pre></p>
其中:

对match不清楚可查阅我的博客对象

对参数进行解码,如空格解码为20%。

原文:

w96680 发表于 2023-2-12 15:49:13

青铜器陶器啥阿发
页: [1]
查看完整版本: 博客首页返回空:设置或返回当前URL的主机名