1 2 3 4 5 6self.location.href;//当前页⾯打开URL页⾯window.location.href;//当前页⾯打开URL页⾯this.location.href;//当前页⾯打开URL页⾯location.href;// 当前页⾯打开URL页⾯parent.location.href;//在⽗页⾯打开新页⾯top.location.href;//在顶层页⾯打开新页⾯
1 2 3 4 5<form id="form1"action="">
<div><strong>这是a.html页⾯<strong>
<iframe src="b.html"width="500px"height="300px"></iframe> </strong></strong></div> </form>
<pre>
1 2<span>这是b.html</span><span id="span1"></span><br/> <iframe src="c.html"width="500px"height="300px"></iframe>
1 2<span><strong>这是c.html:<strong></span><span id="span1"></span><br/> <iframe src="d.html"width="500px"height="300px"></iframe>
1 2 3<span>这是d.html:</span><span id="span1"></span><br/> <input type='button'onclick='jump();'value='跳转'>
<iframe src="d.html"width="500px"height="300px"></iframe>xml文件编辑器中文
1 2 3 4 5 6 7 8 9 10<strong>function jump()
{position和location的区别
//经测试:window.location.href与location.href,self.location.href,location.href都是本页⾯跳转//作⽤⼀样
window.location.href="www.baidu";
//location.href="www.baidu";
//self.location.href="www.baidu";
//this.location.href="www.baidu";
//location.href="www.baidu";
} </strong>
1 2function jump()
{
window.location.href和window.open的⼏种⽤法和区别
使⽤js的同学⼀定知道js的location.href的作⽤是什么,但是在js中关于location.href的⽤法究竟有哪⼏种,究竟有哪些区别,估计很多⼈都不知道了。⼀、location.href常见的⼏种形式
⽬前在开发中经常要⽤到的⼏种形式有:
经常见到的⼤概有以上⼏种形式。
exitprocess注:①如果页⾯中⾃定义了frame,那么可将parent、self、
top换为⾃定义frame的名称,效果是在frame窗⼝打开url地址。
②此外,window.location.href=window.location.href;和
window.location.Reload();都是刷新当前页⾯。区别在于是否
有提交数据。当有提交数据时,window.location.Reload()会
提⽰是否提交,window.location.href=window.location.href;
则是向指定的url提交数据.
③⽤window.open()打开新页⾯
但是⽤window.location.href="" 却是在原窗⼝打开的.亚马逊空格符号html代码
有时浏览器会⼀些安全设置window.open肯定被屏蔽。例如避
免弹出⼴告窗⼝。
⼆、location.href不同形式之间的区别
那么,这⼏种形式的跳转究竟有什么区别呢?
直接讲定义,你肯定不会理解透彻,下⾯我来贴四个html代码,⽤实际的例⼦讲解。
a.html:
b.html:
c.html:
d.html:
a.html,
b.html,
c.html,
d.html通过iframe给联系到了⼀起,那么它们有什么的联系
呢?
观察代码,我们可以看出:
a.html⾥⾯嵌着
b.html;
b.html⾥⾯嵌着
c.html;
c.html⾥⾯嵌着
d.html
运⾏a.html,贴图⼀如下:
下⾯来测试上述⼏种写法.
在d.html⾥⾯head部分写js:
再次运⾏a.html,点击那个"跳转" 按钮,运⾏结果
贴图⼆如下:
对⽐图⼀和图⼆的变化,你会发现d.html部分已
经跳转到了百度的⾸页,⽽其它地⽅没有发⽣变化。这也就解释了"本页跳转"是什么意思。
好,再来修改d.html⾥⾯的js部分为:
3 4parent.location.href='www.baidu'; }
1 2 3 4function jump()
{
top.location.href='www.baidu';
}
运⾏a.html后,再次点击"跳转" 按钮,运⾏结果贴图三如下:
对⽐图⼀和图三,你会发现a.html中嵌套的c.html部分已经跳转到了百度⾸页。
分析:我点击的是a.html中嵌套的d.html部分的跳转按钮,结果是a.html中嵌套的c.html部分跳转到了百度⾸页,这就解释了"parent.location.href是上⼀层页⾯跳转"的意思。
matlab安装2018b再次修改d.html⾥⾯的js部分为:
运⾏a.html后,再次点击"跳转" 按钮,
你会发现,a.html已经跳转到了百度⾸页。
分析:我点击的是a.html中嵌套的d.html部分的跳转按钮,结果是a.html中跳转到了百度⾸页,这就解释了"top.location.href是最外层的页⾯跳转"的意思。
三、location.href总结
看完上⾯的讲解之后,在来看看下⾯的定义你就会⾮常明⽩了:
"top.location.href"是最外层的页⾯跳转
"window.location.href"、"location.href"是本页⾯跳转
"parent.location.href"是上⼀层页⾯跳转.
location是window对象的属性,⽽所有的⽹页下的对象都是属于window作⽤域链中(这是顶级作⽤域),所以使⽤时是可以省略window。⽽top是指向顶级窗⼝对象,parent是指向⽗级窗⼝对象。
四、window.location.href和window.open的区别
1.
window.location是window对象的属性,⽽window.open是window对象的⽅法
window.location是你对当前浏览器窗⼝的URL地址对象的参考!
java防止正则表达式
window.open是⽤来打开⼀个新窗⼝的函数!
2.
window.open不⼀定是打开⼀个新窗⼝
只要有窗⼝的名称和window.open中第⼆个参数中的⼀样就会将这个窗⼝替换,⽤这个特性的话可以在iframe和frame中来代替location.href。
如<iframe name="aa"></iframe>
<input type=button  onclick="window.open('1.htm','aa','')">和
<input type=button
onclick="self.frames['aa'].location.href='1.htm'">的效果⼀样
3.
在给按钮、表格、单元格、下拉列表和DIV等做链接时⼀般都要⽤Javascript来完成,和做普通链接⼀样,可能我们需要让链接页⾯在当前窗⼝打开,也可能需要在新窗⼝打开,这时我们就可以使⽤下⾯两项之⼀来完成:
window.open ⽤来打开新窗⼝
window.location ⽤来替换当前页,也就是重新定位当前页
可以⽤以下来个实例来测试⼀下。
<input type="button" value="新窗⼝打开" onclick="window.open('le')">
<input type="button" value="当前页打开" onclick="window.location='le/'">
4.
window.location或window.open如何指定target?
这是⼀个经常遇到的问题,特别是在⽤frame框架的时候
解决办法:
window.location 改为 top.location 即可在顶部链接到指定页
window.open("你的⽹址","_top");
5.
window.open ⽤来打开新窗⼝
window.location ⽤来替换当前页,也就是重新定位当前页
⽤户不能改变document.location(因为这是当前显⽰⽂档的位置)。
window.location本⾝也是⼀个对象。
但是,可以⽤window.location改变当前⽂档 (⽤其它⽂档取代当前⽂档),⽽document.location不是对象。
服务器重定向后有可能使document.url变动,但window.location.href指的永远是访问该⽹页时⽤的URL.
⼤多数情况下,document.location和location.href是相同的,但是,当存在服务器重定向时,document.location包含的是已经装载的URL,⽽location.href包含的则是原始请求的⽂档的URL.
6.
window.open()是可以在⼀个⽹站上打开另外的⼀个⽹站的地址
⽽window.location()是只能在⼀个⽹站中打开本⽹站的⽹页

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。