<frameset>框架集中不同<frame>之间的调用【js代码中】

top:永远指分割窗口最高层次的浏览器窗口;parent:包含当前分割窗口的父窗口,本文将围绕js中top、parent、frame进行讲述及他们的应用案例

引用方法top
该变量永远指分割窗口最高层次的浏览器窗口。如果计划从分割窗口的最高层次开始执行命令,就可以用top变量。

parent
该变量指的是包含当前分割窗口的父窗口。如果在一个窗口内有分割窗口,而在其中一个分割窗口中又包含着分割窗口,则第2层的分割窗口可以用parent变量引用包含它的父分割窗口。
附:Window对象、Parent对象、Frame对象、Document对象和Form对象的阶层关系

Windwo对象→Parent对象→Frame对象→Document对象→Form对象,如下:
parent.frame1.document.forms[0].elements[0].value;

JS中:window.location(window.location.href)和
window.top.location(window.top.location.href)是一样的意思
可以通过top来调用任何一个frame,因为top指的是最外层的frameset,可以调用它里面的任何一个子元素frame。
如:top.outterFrame1.location和top.innerFrame2.location等。

parent指的是当前窗口(frame)的父窗口(frameset)可以调用它里面的任何一个子元素frame。如:parent.innerFrame1.location和parent.innerFrame2.location等。

<html>
<head>
<title>top frame parent示例</title>
<script language="javaScript" type="text/javaScript">
window.location.href="http://www.baidu.com/";
</script>
</head>
<frameset id="outFrameset" rows="150,*,150" cols="*" border="5">
<frame name="frameName1" id="frameId1" src="a.html">
<frameset id="inFrameset" cols="150,*" rows="*">
<frame name="innerFrameName1" id="innerFrameId1" src="a.html">
<frame name="innerFrameName2" id="innerFrameId2" src="a.html">
</frameset>
<frame name="frameName2" id="frameId2" src="a.html">
</frameset>
</html>

自己的一个示例代码(权限top,left,right页面,在top窗口的页面中获取一个连接地址,让left窗口去请求这个地址,并将响应回来的页面,显示在left窗口中)的一个jsp代码

 1 //当top页面加载完后,left页面自动显示top第一个一级菜单下的拥有的二级菜单
 2         $(document).ready(function(){
 3             //获取遍历出来的第一个超链接的对象
 4             var firstA=$("#turnto1");
 5             var ahref=firstA.attr("href");
 6             //当top页面加载完毕后,left页面自动发送第一个遍历出来的一级菜单的连接地址。
 7             parent.leftFrame.location.href=ahref;
 8
 9         });
10         </script>
11 </head>
12
13 <body style="background:url(<%=request.getContextPath() %>/master/images/topbg.gif) repeat-x;">
14
15     <div class="topleft">
16     <a href="<%=request.getContextPath() %>/master/main.jsp" target="_parent"><img src="<%=request.getContextPath() %>/master/images/logo.png" title="系统首页" /></a>
17     </div>
18
19     <ul class="nav">
20
21
22
23     <c:forEach items="${list }" var="powers" varStatus="vars">
24
25         <li><a  href=‘<%=request.getContextPath() %>${powers.sysPowerUrl }=${powers.sysPowerId}‘ id="turnto${vars.count }" target="leftFrame" class="selected"><img src="<%=request.getContextPath() %>/master/images/icon01.png" title="${powers.sysPowerName }" /><h2>${powers.sysPowerName }</h2></a></li>
26
27     </c:forEach>
28
29
30     </ul>

<frameset>框架集中不同<frame>之间的调用【js代码中】

时间: 2024-10-12 22:18:58

<frameset>框架集中不同<frame>之间的调用【js代码中】的相关文章

在Java中直接调用js代码(转载)

http://blog.csdn.net/xzyxuanyuan/article/details/8062887 JDK1.6版添加了新的ScriptEngine类,允许用户直接执行js代码. 在Java中直接调用js代码 不能调用浏览器中定义的js函数,会抛出异常提示ReferenceError: “alert” is not defined.   package com.sinaapp.manjushri;  import javax.script.ScriptEngine;  import

Python 调用JS文件中的函数

1.安装PyExecJS第三方库 2.导入库:import execjs 3.调用JS文件中的方法 Passwd = execjs.compile(open(r"web.js").read().decode("utf-8")).call('loginHandle','steam') 语句解析,open后跟所执行的js文件位置,call后第一个单引号引起来的为所执行的js文件的某个function,第二个单引号是前面函数的参数这里为function loginHand

ReactMix框架,让你实现一套js代码,基于ReactNative在H5,App都能完美跑起来,Write Once,Run Anywhere

ReactNative框架推出已经有一段时间了,相信很多小伙伴都在尝试实现Write Once, Run Anywhere的梦想,比如淘宝的ReactWeb等等,但是这些框架都局限于因为ReactNative本省的局限性,比如不支持CSS,不支持DOM操作,不支持选择器等等,而没有办法实现Js代码的全平台统一,现在通过全新的ReactMix框架,你可以让你的代码不仅可以在ReactNative上跑起来,实现安卓和iOS代码的统一,而且同样一份代码也可以在PC,H5上跑起来,到底有多神气?让我们来

Delphi 中调用JS文件中的方法

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,ComObj,ActiveX; type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure FormCreate(Sender: TObject); procedure Button

为博客园(或网站)添加百度分享按钮 自定义调用JS代码

1.百度分享代码调用地址 http://share.baidu.com/code 根据提示,一步一步的自定义选择,最后复制自定义好的样式,添加到WEB. 2.在页首Html代码中添加复制过来的JS代码 <!--baidu分享--> <script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini"

在JSP中的java代码中调用js代码

out.println(str)方法就是在JSP服务端运行的时候把str输出到服务端返回给客户端的HTML页面 可以通过out.print()这种方式输出一段JS代码,这段JS代码先声明一个JS函数,声明结束后再调用一下这个方法. 例如: out.println("<script>function showMessage() {alert('set_afterlogin()');}</script>");//声明showMessage方法 out.println

python 调用js代码

Python2   安装pyv8 pip install-egit://github.com/brokenseal/PyV8-OS-X#egg=pyv8 from pyv8 import PyV8 ctxt = PyV8.JSContext() ctxt.enter() # 创建一个jsContext对象并进入 ctxt.eval(js_str) # 执行js代码 接下来就可以使用这个ctxt来执行js脚本了.主要有两种用途: 1.调用js中的方法: #把strEnc绑定到js中的strEnc方

框架页面尽可以这么用(后置代码中控制框架)

下面是框架页: <%@ Page CodeBehind="Frameset.aspx.cs" Language="c#" AutoEventWireup="false" Inherits="IbatisTest.Web.Frameset" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"><HTML>

C#后台调用js代码和其他页面(弹窗)

ScriptManager.RegisterStartupScript(gvwJOList, this.GetType(), "magin", "GroupItem()", true); ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "infobox", "showModalDialog('bom.aspx?',null,'dialogWid