有什么办法如何从IFRAME访问parrent页面(和变化parrent页)?
<body>
<iframe src="frame1.html" name="frame1" height="100%"></iframe>
<div id="test1"></div>
</body>
在frame1.html是<a href=..>
和我要添加文本“ <h1>clicked</h1>
到<div id="test1"></div>
当<a href..>
被点击。
谢谢。
如果你的孩子页面(frame1.html)位于同一个域中父页面,你可以写在子窗口象下面这样的代码:
$('#test1', parent.document).html('<h1>clicked</h1>');
第二参数提供的context
在其中搜索由所述第一参数相匹配的元件。 该文件是在这里: http://api.jquery.com/jQuery/#jQuery-selector-context
jQuery( selector [, context ] )
所以,你的代码(frame1.html)可能是这样的:
<a href="..."
onclick="$('#test1', parent.document).html('<h1>clicked</h1>');">click me</a>
希望这可以帮助。
重要提示:访问进出I帧才有可能,如果双方,父母和iframe都来自同一个域,否则你有由于同源策略的访问权限。
请注意,这两个部件都有自己的文档。 从IFRAME访问父对象是用简单的
parent.document
从父是下列之一:
window.frames['iframeName']
(window.frames.length /*gives you the number of iframes in your document*/ )
或ID引用它并执行以下操作(注意支持!)
var iframe = document.getElementById('iframe');
var doc = iframe.contentDocument? iframe.contentDocument:iframe.contentWindow.document;
下面的代码应该很好地工作:
$(parent.document).find("#selector");
该选择是从父文件执行一些动作。 例如:
$(parent.document).find("#selector").remove();