zoukankan      html  css  js  c++  java
  • 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地址

  • 相关阅读:
    Directx 3D编程实例:多个3D球的综合Directx实例
    利用组策略禁用Oultook 各个版本的缓存模式!
    node-mongo-native1.3.19连接mongo的最优方法
    BT5之网络配置
    BT5之配置笔记
    Linux常用命令大全
    Linux下的基本网络配置
    SQLMAP系列教程
    重燃你的PHP安全分析之火
    Metasploit渗透测试魔鬼训练营
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4015566.html
Copyright © 2011-2022 走看看