当前位置: 首页 > news >正文

郑州网站优化培训机构企业网站制作流程图

郑州网站优化培训机构,企业网站制作流程图,网站建设分配人员方案,搭建私有云需要多少钱location对象 location是最有用的BOM对象之一,它提供了与当前窗口中加载的文档信息,还提供了一些导航功能。既是window对象,也是document对象的属性,即window.location和document.location引用的是同一个对象。它主要的功能有以下…

location对象

location是最有用的BOM对象之一,它提供了与当前窗口中加载的文档信息,还提供了一些导航功能。既是window对象,也是document对象的属性,即window.location和document.location引用的是同一个对象。它主要的功能有以下3点

  1. 保存当前文档的信息
  2. 导航功能
  3. 解析URL

属性

属性名例子说明
hash#contents返回url中hash模式路径,即#号后的0或者字符串,如果url不是hash模式,则返回空字符串
hostwww.wrox.com:80返回服务器和端口名称
hostnamewww.wrox.com返回不带端口号的服务器名称
hrefhttp://www.wrox.com返回完整的url,location.toString()就是返回这个对象
pathname“/file/”返回URL中的目录或者文件名
port8080返回端口号
protocolhttp:返回协议,一般为http或者https
search?=javascript返回URL查询字符串,一般以?开头

例子

以掘金地址(https://juejin.cn/search?query=async await&type=0)为例,可以看到location返回的参数

在这里插入图片描述

查询字符串参数

尽管location.search会返回?后面的所有查询参数,但是始终是以字符串的形式,没有办法将查询参数解析出来。

location.search的参数生成规则如下:

  1. &拼接参数
  2. 格式为name=value
  3. 使用encodeURIComponent()加密

为此,可以根据URL查询参数生成的规则创建一个解析参数函数,如下:

function getQueryStringArgs() {// 取得要查询的字符串并去掉开头的问号var qs = (location.search.length > 0 ? location.search.substring(1) : ""),args = {},items = qs.length ? qs.split("&"): [],item = null,name = null,value = null,//  在for 循环中使用i = 0,len = items.length;// 逐个将每一项目添加到args对象中for (i; i < len; i++) {item = items[i].split("=");name = decodeURIComponent(item[0]);value = decodeURIComponent(items[1]);if (name.length) {args[name] = value}}console.log(args);return args;
}

踩坑记录

mdn中找到这样子一段话

现代浏览器提供 [URLSearchParams](https://developer.mozilla.org/zh-CN/docs/Web/API/URLSearchParams/get#examples)[URL.searchParams](https://developer.mozilla.org/zh-CN/docs/Web/API/URL/searchParams#examples)两个接口,使得从查询字符串中解析出查询参数变得更加容易。

但是他们下面都备注了一句话:

在这里插入图片描述

所以实际上在控制台使用这两个函数,并不能解析出查询参数,如下:
在这里插入图片描述

位置操作

跳转—location.assign()

改变浏览器位置,主要用法为location.assign(url) ,大概会返回以下3种结果:

  1. 触发窗口加载并显示指定的 url的内容
  2. 当前locationurl不是同源时,会抛出一个 SECURITY_ERROR类型错误
  3. 当传入一个无效的url时,会抛出一个 SYNTAX_ERROR类型

替换—location.replace()

替换当前资源,与 [assign()](https://developer.mozilla.org/zh-CN/docs/Web/API/Location/assign)方法不同的是,调用 replace()方法后,当前页面不会保存到会话历史中,即无法点击回退按钮回退

// 语法
object.replace(url);// 示例
object.replace('http://www.baidu.com');

其他

可以通过修改location对象的其他属性方法改变当前加载页面,比如hrefhashsearchpathname等等

// 将url改为http://baidu.com
location.href = 'http://baidu.com';// 改为http://baidu.com/#section
location.hash = '#section';// 改为http://baidu.com/?keyword=css
location.search = '?keyword=css';// 改为http://baidu.com/mydir
location.pathname = 'mydir';// 改为https://juejin.cn/
location.hostname='juejin.cn'// 将端口改为8080
location.port = '8080'

**注意:**每次修改location属性(hash除外),都会重新刷新页面
在这里插入图片描述

刷新页面—location.reload()

以最有效的方式刷新当前页面,主要规则如下:

  1. 页面自上次请求以来并没有改变时,页面从浏览器缓存中重新加载
  2. 如果页面有所改变,则从服务器中重新加载

这个主要是request header中判断是否更新,具体参考浏览器缓存知识梳理 一文

需要强制刷新的话,可以使用location.reload(true)

**注意:**位于location.reload()调用之后的代码有可能不会执行,这取决于网络延迟或者系统资源等因素。因此,最好将location.reload()放在最后一行

location.toString()

string的方式返回**整个url地址,**如下:
在这里插入图片描述

http://www.yayakq.cn/news/944725/

相关文章:

  • 可以查企业的网站突出什么 加强网站建设
  • 撰写网站的建设方案显示网站建设中
  • 河南省住房建设厅网站首页wordpress主题mirana
  • 包头建设工程安全监督站网站泰安人才网最新招聘网
  • 有免费的网站服务器吗苏宁网站开发人员
  • 网站建设公司的网销好做吗python编程快速上手
  • 网站设计的公司logo做效果图常用的网站有哪些
  • 官方网站找oem做洗发水厂家以就业为导向的高职计算机专业网站设计
  • 建设高校图书馆网站的意义莱芜话题最新消息
  • 公众号版影视网站开发东营房产信息网58同城
  • 专门做衣服的网站有哪些品牌网站建设 细致磐石网络
  • 网站开发前景知乎长沙第三方网站建设公司
  • 昆明网站建设高端定制嘉兴网站建设全包
  • 重庆大渝网首页sem优化和seo的区别
  • 帝国cms 网站地图哪里有做配音的兼职网站
  • 用什么软件做网站haohtml企业网站主页模板
  • 网站建设的专业术语wordpress手机显示不了图片
  • 免费用手机做网站网站排名优化原理
  • 手机网站样例在深圳学网站设计
  • 印刷做网站网上接单免费文档模板网站
  • 如何建立网站做微商软件网站开发
  • 怎么用html做图片展示网站商城微信网站怎么做
  • 佛山做网站公司有哪些网站栏目策划 有思想的新闻
  • 做阿里巴巴类似的网站吗百度收录怎么做
  • wamp可以做视频网站吗中信建设有限责任公司企查查
  • 桐庐营销型网站建设wordpress role
  • 石家庄市网站制作价格做个网站的价格
  • 营销型企业网站怎么制作时代网站管理系统怎么做网站
  • seo网站推广seo制作网页的语言
  • 网站上的淘客组件是怎样做的seo关键词排优化软件