框架

MicrosoftInternetExplorer4
0
2
DocumentNotSpecified
7.8 磅

Normal

0

@font-face{font-family:"Times New Roman";}@font-face{font-family:"宋体";}@font-face{font-family:"Calibri";}@font-face{font-family:"serif";}@font-face{font-family:"Arial";}@font-face{font-family:"Arial";}@font-face{font-family:"sans-serif";}p.MsoNormal{mso-style-name:正文;mso-style-parent:"";margin:0pt;margin-bottom:.0001pt;mso-pagination:none;text-align:justify;text-justify:inter-ideograph;font-family:Calibri;mso-fareast-font-family:宋体;mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;}span.msoIns{mso-style-type:export-only;mso-style-name:"";text-decoration:underline;text-underline:single;color:blue;}span.msoDel{mso-style-type:export-only;mso-style-name:"";text-decoration:line-through;color:red;}@page{mso-page-border-surround-header:no; mso-page-border-surround-footer:no;}@page Section0{}div.Section0{page:Section0;}

可以用树形图来表示框架集,如下所示:

Top window→→frame menu

↓↓↓

Frame main→frameBottom

Frame top

底层框架是frameBottom,
其父框架是
Frame main,Frame main
的框架是顶层窗口。所以,要从
frameBottom
窗口访问顶层窗口的函数,就需要访问
frameBottom
的父框架(
Frame main)的父框架的
window对象,
window
对象拥有
parent
的属性,它引用于该
window
对象的父窗口

在frameBottom框架中写入代码:
window.parent
,这行代码指的是
Frame main
,但是我们需要访问的是顶层窗口,也就是
Frame main
的父窗口,所以给上面的代码需要再添加
parent
属性:即:
window.parent.parent

现在有了对顶层窗口的引用,如果要访问顶层窗口的myFunction
函数,在表达式的末尾添加这个函数就行,即:
window.parent.parent.myFunction()

怎样才能在frameBottom
中访问
frame menu

window
对象?

Window.parent.parent表示的是顶层窗口,现在需要访问的是顶层窗口的子
window
对象
framemenu
,采用以下三种方式都可以:

Window.parent.parent.framemenu //直接引用的方式

Window.parent.parent.frames[0] //在
window
对象的
frames
集合属性中使用该对象的索引

Window.parent.parent.frames[“framemenu”] //在
frames
集合下使用该对象的名称

对顶层窗口的引用除了上述事例外,还有一种方法:即使用window
对象的
top
属性,如上述的代码
Window.parent.parent.framemenu
还可以写成
window.top.framemenu,
由于
window
是全局对象,所以可以缩写为:
top.framemenu

问题又来了,何时使用top
,何时使用
parent

?

Parent属性允许指定与当前窗口的对应关系,当前窗口的上一层窗口是
window.parent
,父窗口是
window.parent.parent
,以此类推

Top属性,无论使用什么样的框架集布局,它都是顶层窗口

如果有人把网站加载到他自己的框架集页面中,那么top
窗口就不是原来的顶层窗口了,而是这个人的框架集页面,此时
window.top
不在有效

你可能感兴趣的:(框架)