您是否试图从父窗口调用iframe中的函数?
它可以这样做:
main_window.html
<!DOCTYPE html>
<html>
<head>
<title>main window</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script>
$(document).ready(function() {
$("a#update_text_link").click(function(event) {
event.preventDefault();
$("iframe#iframe_id")[0].contentWindow.update_text(); // run the function
});
});
</script>
</head>
<body>
<p><a href="#" id="update_text_link">Update iframe text</a></p>
<iframe src="iframe.html" id="iframe_id"></iframe>
</body>
</html>
Iframe.html的
<!DOCTYPE html>
<html>
<head>
<title>iframe</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script>
function update_text() {
$("h1").fadeOut(function() {
$(this).text("Some updated text.").fadeIn();
});
}
</script>
</head>
<body>
<h1>Some text.</h1>
</body>
</html>
然而,这不会在某些浏览器工作(如Chrome)如果您从本地文件系统加载网页。所以你需要把这个例子放在一个Web服务器上,然后尝试在这样的浏览器中打开它。
另外,如果你需要对这个主题的更多信息(包括旧版浏览器的支持),您可以阅读一些回答类似的问题在这里:
Invoking JavaScript code in an iframe from the parent page