JS如何获取对象的父对象(非文档对象)

JavaScript09

JS如何获取对象的父对象(非文档对象),第1张

在js中,我们时常用到用iframe做系统框架,在子页面也,父页面之间的值传递是一个问题,下面是js获取父窗体和子窗体的对象js:

1.在iframe子页面中获取父页面的元素:

a>window.parent.document这个是获取父页面document中的对象;

b>如果要获取父页面js中的方法:window.parent.xxxx();xxxx()为方法;

2.在父页面中获取iframe子页面中的元素:

a>

var child =

document.getElementByIdx_x("mainFrame").contentWindow//mainFrame这个id是父页面iframe的id

child.document//获取子页面中的document对象;

可以这样

<script type="text/javascript">

var a=function(){

this.x=1

var parent = this

this.b=function(){

this.x=2

alert("parent.x "+parent.x)

}

}

var c=new a()

c.b()

理解以下几点后就很清楚了:

DOM是html 文档接口。

DOM将html文档的元素(即html标签)根据层级整理成树状模型。

而js操作html都是通过DOM来操作的。

一棵树,有干、有枝、有叶,叶的父级是枝,枝的父级是干。

如果你只是看文件的内容的话它是可以这样理解的:

中国 包含 云南,云南 包含 红河州, 红河州 包含 红河人hongheren.cn

红河州就是红河人 的父级,云南是红河州的父级,中国是云南的父级

例:<html><body><div></div></body></html>

body是div的父级,html是body的父级

其它一次类推。

以上是DOM父级的理解,有助于理解js事件的父级。

js事件的父级,说白了就是事件发生点的元素的对象的父级对象上的事件。

如下面的代码保存为html文件:

<html><body onclick="alert('body')"><div onclick="alert('div')"

style="width:600pxheight:400pxbackground-color:F00"></div></body></html>

用浏览器开打后你会发现点击div是body的onclick事件也被触发了。

如上,应该能够理解了吧。