location.href的用户总结

 *.location.href 使用方法:
  top.location.href=”url”          在顶层页面打开url(跳出框架)
  self.location.href=”url”         仅在本页面打开url地址
  parent.location.href=”url”      在父窗体打开Url地址
  this.location.href=”url”       使用方法和self的使用方法一致
     if (top.location == self.location) 推断当前location 是否为顶层来 禁止frame引用
   假设页面其中有自己定义的frame的话,也能够将parent  self   top换为自己定义frame的名称
     效果就是在自己定义frame窗体打开url地址 
 
 javascript frame 刷新
引用: 
--------------------------------------------------------------------------------

这是一个简单的事例:
下面是top.htm 代码
<script language=javascript>
function rs(){
parent.left.location.href="top.htm"
parent.bot.location.href="top.htm"
}
</script>
<input type=button name=name value="ksdj" onclick=rs();>

下面是一个任意文件名称的htm文件:
<FRAMESET COLS="150,*">
<FRAME SRC="left.htm" name=left>
<FRAMESET ROWS="150,*">
<FRAME SRC="top.htm" name=top>
<FRAME SRC="bot.htm" name=bot>
</FRAMESET>
</FRAMESET>
你自己试试,我想你要的可能就是这种效果!

--------------------------------------------------------------------------------


我引用楼上老兄的方法回复,帮忙解释一下吧。
下面是top.htm 代码
<script language=javascript>
function rs(){
parent.left.location.href="top.htm" //partent指的是父页,也就是最外面的框架页,left仅仅得是left.htm,location是left页的一向对象,而href是location对象的一个属性,就是该属性确定了left的url地址。所以这里就把你须要的地址给了这个parent.left。
parent.bot.location.href="top.htm" //此句意思同上面的大致一样。
} //函数结束,实现了同一时候对两个url的更新!
</script>
<input type=button name=name value="ksdj" onclick=rs();>

下面是一个任意文件名称的htm文件:
<FRAMESET COLS="150,*">
<FRAME SRC="left.htm" name=left> > //给这个left.htm定义了一个名字叫left
<FRAMESET ROWS="150,*">
<FRAME SRC="top.htm" name=top> //给这个top.htm定义了一个名字叫top
<FRAME SRC="bot.htm" name=bot> //给这个bot.htm定义了一个名字叫bot
</FRAMESET>
</FRAMESET>

window 对象的 location 属性包括了当前页面的地址 (URL) 信息,你能够直接改变此属性值,将其设置成新的地址 (URL):

window.location = "http://www.yahoo.com/";
或者
location = "http://www.yahoo.com/";

你还能够通过下边的两种方法中的不论什么一种来使浏览器从server上下载 (Load) 页面:

reload() - 促使浏览器又一次下载当前的页面,也就是“刷新”当前页面了。
replace(URL) - 促使浏览器依据 URL 參数中给出的地址 (URL) 下载页面,同一时候在当前浏览器存储的历史记录 (即所浏览过的页面的列表) 中使用新的地址(即此方法中的 URL 參数) 覆盖当前的页面。
使用 replace() 方法意味着用户将不能通过按 “返回” button回到前边浏览过的那个页面,但这并非说用户全然不能回到原来的全部页面,他们仅仅只是是无法回到被 replace() 方法替换的那一个页面 (注意:仅仅是被替换的那一个页面)。

 framedemo.html,top.html,button.html为例来详细说明怎样做

当中framedemo.html由上下两个页面组成,代码例如以下:

<frameset rows="50%,50%"><frame name=top src="top.html"><frame name=button src="button.html"></frameset>

如今如果top.html即上面的页面有一个button来实现对以下页面的刷新,能够用以下七种语句,哪个好用自己看着办了。

语句1. window.parent.frames[1].location.reload();

语句2. window.parent.frames.bottom.location.reload();

语句3. window.parent.frames["bottom"].location.reload();

语句4. window.parent.frames.item(1).location.reload();

语句5. window.parent.frames.item('bottom').location.reload();

语句6. window.parent.bottom.location.reload();

语句7. window.parent['bottom'].location.reload();

解释一下:

1.window指代的是当前页面,比如对于此例它指的是top.html页面。

2.parent指的是当前页面的父页面,也就是包括它的框架页面。比如对于此例它指的是framedemo.html。

3.frames是window对象,是一个数组。代表着该框架内全部子页面。

4.item是方法。返回数组里面的元素。

 
看了部分文章个人总结:
top.location是在顶层frame中打开新页   
window.location是在当前frame中打开新页
parent.location 在当前窗体的父窗体打开Url地址

posted @ 2014-10-10 12:30  blfshiye  阅读(124)  评论(0编辑  收藏  举报