- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
js frame 框架编程与frameElement
1 框架编程概述
一个Html 页面可以有一个或多个子框架,这些子框架以iframe来标记,用来显示一个独立的Html 页面。
这里所讲的框架编程包括框架的自我控制以及框架之间的互相访问,
例如
从一个框架中引用另一个框架中的JavaScript变量、调用其他框架内的函数、控制另一个框架中表单的行为等
2 框架间的互相引用
一个页面中的所有框架以集合的形式作为window 对象的属性提供
例如:
window.frames 就表示该页面内所有框架的集合,这和表单对象、链接对象、图片对象等是类似的,不同的是,这些集合是document 的属性。
因此,要引用一个子框架,可以使用如下语法:
window.frames[“frameName”];
window.frames.frameName
window.frames[index]
其中,window字样也可以用self代替或省略,假设frameName 为页面中第一个框架, 则以下的写法是等价的:
self.frames[“frameName”]
self.frames[0]
frames[0]
frameName
了解如何引用一个框架,那么引用的这个框架到底是什么呢?
其实,每个框架都对应一个HTML 页面,所以这个框架也是一个独立的浏览器窗口,它具有窗口的所有性质,所谓对框架的引用也就是对window 对象的引用。
有了这个window 对象,就可以很方便地对其中的页面进行操作
例如
使用window.document对象向页面写入数据、使用window.location属性来改变框架内的页面等。
下面分别介绍不同层次框架间的互相引用:
2.1.父框架到子框架的引用
知道了上述原理,从父框架引用子框架变的非常容易,即:
window.frames[“frameName”];
这样就引用了页面内名为frameName 的子框架。
如果要引用子框架内的子框架,根据 引用的框架实际就是window对象的性质,可以这样实现:
window.frames[“frameName”].frames[“frameName2”];
这样就很引用到了二级子框架,以此类推,可以实现多层框架的引用。
2.2.子框架到父框架的引用
每个window对象都有一个parent属性,表示它的父框架。如果该框架已经是顶层框架,则window.parent 还表示该框架本身。
2.3.兄弟框架间的引用
如果两个框架同为一个框架的子框架,它们称为兄弟框架,可以通过父框架来实现互相引用
例如一个页面包括2 个子框架:
frameset rows=50%,50%
frame src=1.html name=frame1 /
frame src=2.html name=frame2 /
/frameset
在frame1 中可以使用如下语句来引用frame2:
self.parent.frames[“frame2”];
2.4.不同层次框架间的互相引用
框架的层次是针对顶层框架而言的。
当层次不同时,只要知道自己所在的层次以及另一个框架所在的层次和名字,利用框架引用的window对象性质,可以很容易地实现互相访问
例如:
self.parent.frames[“childName”].frames[“targetFrameName”];
2.5.对顶层框架的引用
和parent 属性类似,window 对象还有一个top 属性。它表示对顶层框架的引用,这可以用来判断一个框架自身是否为顶层框架
例如:
//判断本框架是否为顶层框架
if(self==top)
{
//dosomething
}
3 改变框架的载入页面
前面已经讲到,对框架的引用就是对window对象的引用,利用window对象的location属性,可以改变框架的导航
例如:
window.frames[0].location=”1.html”;
这就将页面中第一个框架的页面重定向到1.html,利用这个性质,甚至可以使用一条链接来更新多个框架
frameset rows=50%,50%
frame src=1.html name=frame1 /
frame src=2.html name=frame2 /
/frameset
!--somecode--
a href=”frame1.location=’3.html;frame2.locati
文档评论(0)