深入了解window.location
来源:互联网 发布:直通车优化步骤 编辑:程序博客网 时间:2024/06/07 01:03
在最近的项目中,很多前端ajax表单提交后的跳转,因为使用了window.location.href 和 window.location.reload,产生了不同的效果,于是深入研究了一下window.location相关的函数。
window.location.href=“url”:改变客户端当前url
window.history.go(-1);window.history.back();后退,相当于浏览器“后退”按钮
window.location.replace(“url”):将地址替换成新url,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后 退”来访问已经被替换的URL,这个特点对于做一些过渡页面非常有用!
举个例子说明window.location.replace的作用,有三个页面:1.html, 2.html, 3.html
首先页面3.html的代码一直固定。
<script>window.history.back();</script>
==window.location.replace==
首先访问1.html,然后在浏览器栏改网址访问2.html。
2.html代码如下:
<script>window.location.replace('3.html');</script>
这样用浏览器的前进、后退,或者使用window.history.go(-1);window.history.back();只能在1.html和3.html中切换,无法访问到跳转页面2.html
该结论在ie8, firefox3, chrome9, opera10, safari4验证通过
==window.location.href==
首先访问1.html,然后在浏览器栏改网址访问2.html。
2.html代码如下:
<script>window.location.href = '3.html';</script>
当在3.html用浏览器的前进、后退,或者使用window.history.go(-1);window.history.back();
不同浏览器效果如下:
ie8 跳到2.html
safari4 跳到2.html
opera10 跳到1.html
chrome9 跳到1.html
firefox3 跳到1.html
window.location.reload([bool]):强制刷新页面,从服务器重新请求!如果有post请求也会强制重新发送请求。
reload(true)是从服务端重新拿一下所有的页面组件,像image,css,js都得从拿,所以速度比较慢
reload(false)则是从本地缓存中拿页面组件,但是好像html自身不会缓存,所以一般用reload(false)就可以,具体是不是就不大清楚了 如果超出假设,可以考虑href,assign,replace等方法。
- 深入了解window.location
- 深入了解 Window和WindowManager
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- window.location
- document.location & window.location
- document.location&window.location
- window.open()、window.location()
- !!!
- Google C++ Style Guide
- root moto ME525 (Defy)并使用tcpdump抓包
- 一个好用的 命令行音乐播放器moc
- iPhone的等待图标
- 深入了解window.location
- 浅析计算机网络应用安全问题与策略研究
- 动态链接库与静态链接库
- 判断指定日期是星期几(delphi编程实现)
- Watir VS Selenium
- (转)ubuntu编程缺少openssl头文件的解决办法
- [原创总结 不断更新]Linux 下常用命令操作总结
- 北大和人大两年整理出来的阅读书单【无论你是什么专业】
- 用sql语句直接拼装SQL的方法