本文实例讲述了JS基于Location实现访问Url、重定向及刷新页面的方法。分享给大家供大家参考,具体如下:
js通过Location实现访问Url,重定向,刷新页
web中经常会使用到刷新页面,访问url、重定向请求的功能。
javascript提供了许多方法访问,修改当前用户在浏览器中访问的url.所有的这些技术都是基于location对象的。它是作为window对象的属性。你可以生成一个包含当前url的新location对象:
var currentURL=window.location;
在这片文章你将看到location对象的所有属性和方法,你将学到:
- 怎么读取url不同部分
- 怎么重定向网页
- 怎么自动刷新或重载页面.
1.分析url
URL有6部分组成,一些是可选的:
<协议>//<域名>:<端口>/<路径><查询参数><hash>
<protocol>//<hostname>:<port>/<pathname><search><hash>
协议和域名是必须项,其它是可选项。
下面是一个包含所有部分的URL例子:
http://www.example.com:80/example.cgi"color: #0000ff">www.example.com 是 域名, 80 是端口, /example.cgi 是路径, "color: #0000ff">www.example.com:80href
包含整个URL例如:http://www.example.com:80/example.cgi"htmlcode">var currentURL=window.location; alert(currentURL.href);//Displays'http://www.example.com:80/example.cgi"htmlcode">window.location.href="http://www.example.com/anotherpage.html" rel="external nofollow" ;示例:
<input type="button" onclick="window.location.href='http://www.google.com/'" value="Visit www.google.com"/>使用Location的href属性跳转页面,前一页的Url会保存在浏览器的history历史中。当用户点击浏览器的“后退”按钮可以返回前一页。如果你不想让返回前一页可使用
Location.replace()
代替:window.location.replace("http://www.example.com/anotherpage.html");除了可以将页面重定向不用的页面,还可重定向当前页面不同的锚点
window.location.hash="#moreResults";例如:
<input type="button" onclick="window.location.hash='#top'" value="Jump to the top of the page"/>在页面有个名为#top的锚点。点击按钮时浏览器会移动到顶部。注意观察浏览器地址栏的变化,当你点击浏览器后退按钮可回到前一位置。
4.重载刷新页面
可以调用
Location.reload()
强制浏览器重新刷新当前URL.就像当前用户点击浏览器的刷新按钮或F5一样。window.location.reload();如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头 If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,
reload()
会再次下载该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。如果把该方法的参数设置为 true,那么无论文档的最后修改日期是什么,它都会绕过缓存,从服务器上重新下载该文档。这与用户在单击浏览器的刷新按钮时按住 Shift 健的效果是完全一样。
window.location.reload(true);简单示例:
<input type="button" onclick="window.location.reload()" value="Reload the page"/>更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript页面元素操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。