js中window对象详解以及页面跳转
1.window.top.window.location = "index.asp";
2.window.top.location.href="index.asp"
3. window.top.location.replace("index.asp");
4. window.navigate("index.asp");
5.windows.open() //新窗口JS脚本可以用 windows.parent指向前一个窗体的引用访问前一个窗口的属性和方法;
6. window.history.go(-2);//这个速度最快,从本地缓存中读取。但页面数据可能不是最新
history.go(-1),
history.back().
window.history.forward()
... ... 详细history实现方法参见博文< js页面跳转 和 js打开新窗口方法>【http://blog.csdn.net/Henry_YQH/article/details/8530711】
------------------------------------
先解释前缀属性:
window:每个浏览器窗口及窗口框架都是由window对象表示的;应用程序中每个窗口都会创建一个window对象,为JS创建了一个独立的执行环境,其中包含的重要属性有document
(文档显示结构),location(地址属性),frames[ ](表单数组), history(历史记录), screen, navigator(浏览器属性), top(最外层框架), parent(上一层框架), self, window(自引用属性)
ps: 默认代表的就是他的window属性; 所以应该可以省略掉window关键字,我们的使用中就很少出现window关键字;
location:窗口的location属性是一个Location对象,代表当前显示文档的URL;
locaiton的href属性是一个字符串,包含完整的URL,其他属性protocol, host, pathname和search(?之后的部分)等则分别声明了URL的各个部分;直接取location的值实际取到的就是它的href一样的值,因为它自带了一个toString()方法;
可以把一个URL字符串直接复制给loation对象,作用是引起浏览器装载这个URL页面的内容,但是location对象本身并没有一种方法可以用一个URL替换;但是js1.1之后有两种方法:reload()会从webserver重新装载当前界面;replace()会装载并显示指定的URL;但是为给定URL调用replace和把一个URL赋值给窗口的location不同,当调用replace时,指定的URL会替换浏览器历史中的当前URL,而不是在历史列表中创建一个新条目,如果用浏览器上的back按钮,就可能无法回到原始文档。
PS.个人使用中发现,起码在chrome浏览器中,给location赋值和给location的href赋值,实现是有区别的,给location赋值,浏览器可能会做更多资源释放的动作(具体问题个人博客赘述: http://blog.csdn.net/mrvinc/article/details/9733281)
---------------------------------------
另外还有一些服务器实现方法:
Response.Redirect()
这个的工作原理就是:客户端输入url,向服务器发一次请求,访问到服务器,然后服务器响应返回一个跳转的url到客户端,然后浏览重定向(302),再像服务器发送一次请求,然后服务器根据请求,响应操作。实现这个过程中间访问了两次服务器,访问是有时间的所以这个比较耗时间。
这个后台使用的跳转方法实际上跳转效率稍微低点,因为需要和服务器两次交互才到目的页面。
Server.Transfer()
这个的工作原理就是:客户端输入url,向服务器发一次请求,访问到服务器,然后服务器响看你要访问一个新得url,直接从服务器跳转访问,返回你想要显示的。中间就访问了一次服务器,浏览器的地址不发生改变。
window.showModalDialog()打开子窗口方法;
js中window对象详解以及页面跳转的更多相关文章
- 转-JS中document对象详解
对象属性 document.title //设置文档标题等价于HTML的<title>标签 document.bgColor //设置页面背景色 document.fgColor //设置 ...
- JS中window.showModalDialog()详解 HTML DOM open() 方法
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框. window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框. ...
- JS中document对象详解
转自:http://www.cnblogs.com/andycai/archive/2010/06/29/1767351.html 对象属性 document.title //设置文档标题等价于HTM ...
- JS中navigator对象详解
<code class="language-html"><!doctype html> <html> <head> <meta ...
- js中Date()对象详解
var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1970-???? ...
- JS中window.showModalDialog()详解
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框. window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框. ...
- JS中window.showModalDialog()详解(转)
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框. window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框. ...
- (转)javascript中event对象详解
原文:http://jiajiale.iteye.com/blog/195906 javascript中event对象详解 博客分类: javaScript JavaScriptCS ...
- UWP入门(七)--SplitView详解与页面跳转
原文:UWP入门(七)--SplitView详解与页面跳转 官方文档,逼着自己用英文看,UWP开发离不开官方文档 1. SplitView 拆分视图控件 拆分视图控件具有一个可展开/可折叠的窗格和一个 ...
随机推荐
- apache mpm的一些问题
win2003系统下apache环境,mpm_winnt.c模式,优化参数: ThreadsPerChild 说明:每个子进程建立的线程数,默认值:64,最大值:1920.网上查询资料建议设置在100 ...
- 利用InfoPath实现SharePoint Server 2013列表的级联选择(Cascading Drop Down List)
最近在利用SharePoint Server 2013的列表组织和存储数据,发现SharePoint列表原始不支持级联选择的功能. 谷歌百度一通以后,发现了很多通过代码实现的方案,利用第三方的插件sp ...
- 使用oracle9的 odbc 连接oracle11
客户机上基于Oracle 9i的ODBC数据源,无法连接oracle 11G数据库,提示错误为:error ORA-01017, Invalid Username / Password.奇怪的是:sq ...
- 设置TeeChart的提示文本
使用第三方Steema的TeeChart控件,设置鼠标放在某一线条点上,显示某一点的数据标签问题(虚线型十字光标基准线,放在线上显示对应点的二维坐标轴数据数据),调用InitTeeChartTipTo ...
- 开源NFV管理器 - OpenStack Tacker介绍 NFV和Tacker介绍和主要功能
原文链接:https://blog.csdn.net/bc_vnetwork/article/details/51463518 1.NFV概述 NFV(网络功能虚拟化Network Function ...
- “全栈2019”Java第九十九章:局部内部类与继承详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- SpringMVC 的映射
27.1.1 @RequestMapping使用 之前,我们是把@RequestMapping注解放在方法之上,用来给方法绑定一个请求映射.除此以外,@RequestMapping注解还可以放在类的上 ...
- 洛谷P4250 [SCOI2015]小凸想跑步(半平面交)
题面 传送门 题解 设\(p\)点坐标为\(x_p,y_p\),那么根据叉积可以算出它与\((i,i+1)\)构成的三角形的面积 为了保证\(p\)与\((0,1)\)构成的面积最小,就相当于它比其它 ...
- Ambiguous mapping found. Cannot map 'XXXController' bean method
springMVC报错,原因方法之间@RequestMapping()到了同一个地址,导致springmvc无法定位
- Flink学习笔记-新一代Flink计算引擎
说明:本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKh ...