如何利用jquery插件来操作iframe父级页面的元素

 我来答
可以叫我表哥
2015-01-12 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
采纳数:25897 获赞数:1464977
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。

向TA提问 私信TA
展开全部
结合当前非常流行的 jquery 分享一下如何使用 jquery 查找和操作 iframe 父级页面元素的实现代码。实例如下:

XML/HTML Code
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>父级页面</title>
</head>
<body>
<div id="example">这是父级页面!</div>
<div>
<iframe src="iframe.html"></iframe>
</div>
</body>
</html>
下面是 iframe.html 页面代码:

XML/HTML Code
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>iframe 子级页面</title>
<script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script language="javascript">
$("body",parent.document).append('这是子级页面添加的内容!');
$("body",parent.document).find('#example').html('子级页面将替换父级页面的内容!');
</script>
</head>
<body>
iframe 子级页面内容
</body>
</html>
另外由于 iframe 不能跨域,所以直接打开以上文件的话,有的浏览器可能不起作用,这时可以将以上两文件上传到本地或远程服务器上看效果。

另外对于javascript操作iframe对象有几点需要说明的是:

iframe里的js要操作父级窗口的dom,必须搞懂几个对象:

parent是父窗口(如果窗口是顶级窗口,那么parent==self==top),

top是最顶级父窗口(有的窗口中套了好几层frameset或者iframe),

self是当前窗口(等价window),

opener是用open方法打开当前窗口的那个窗口;

这样iframe里的js要操作父级窗口的dom可以通过parent,top这些对象来获取父窗口的window对象,例如:

parent.document.getElementById("dom ID");

parent,top还能调用父级窗口的的js方法,比如,getIFrameDOM(iID)是父级窗口的一个方法,那么iframe里可以使用parent.getIFrameDOM("wIframeA")来调用父级窗口的getIFrameDOM(iID)方法。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式