我在一个包含javascript函数getData()的iframe中打开了一个完整的html,现在我不知道如何从该框架外部调用getData()。还有可能调用它来自外部的JavaScript文件?从iframe外部调用javascript函数
回答
您可以从window.frames属性中获取对帧窗口对象的引用。见https://developer.mozilla.org/en/DOM/window.frames
UPDATE:
您可以window[framename]
访问一个名为iframe的全球背景。例如:
<iframe src="data.html" name="data"></iframe>
<script>
var myData = window.data.getData();
</script>
虽然您将需要确保iframe已加载。
$("iframe").contents()
这一切都是假设same domain内举办的框架:
在jQuery中,如果你想进入的iframe DOM可以使用内容的方法。
UPDATE [2]:
你问是否有可能从外部JS文件调用getData
功能。答案是肯定的(如果我理解你的话)。这里有一个例子:
<html>
<head>
<meta charset="utf-8">
<title>parent page</title>
</head>
<body>
<iframe src="data.html" name="data"></iframe>
<script src="getdata.js"></script>
</body>
</html>
在
getdata.js
文件
然后,你必须:
var dataFrame = window.data;
// when the frame has loaded then call getData()
dataFrame.onload = function() {
var myData = dataFrame.getData();
// do something with myData..
}
希望这回答你的问题:)
在这些情况下,你的名字你iframe和使用主体/发射架,然后使用parent.objectname,在JS一切都是对象,你应该能够调用的getData()
迅速带领谷歌搜索我对此 - >http://www.esqsoft.com/javascript_examples/iframe_talks_to_parent/
thnx您的回复家伙..但我真正的关注是要知道我是否可以从外部JavaScript文件调用它。 – 2011-02-28 10:57:13
是的,你可以让你的框架加载一个外部的js文件来定义你的功能。在从父页面调用getData之前,您需要确保框架已经加载了外部脚本。 – johnhunter 2011-02-28 11:07:38
在某些情况下有可能会调用JavaScript的neccessity函数在父文档的iframe中,反之亦然; 在iframe的父级文档中调用JavaScript函数。
例如;父文档具有ID属性为'iFrameId'的iframe,并且在该iframe文档中定义了函数'functionInIframe()'。 以下代码可以从父文档本身调用iframe函数。
document.getElementById('iFrameId').contentWindow.functionInIframe();
而下面的代码可以从iframe自身调用父文档(functionInParent())中定义的函数。
parent.functionInParent();
这样javascript可以在父文档和iframe之间进行交互。
- 1. 调用外部JavaScript函数
- 2. 在IE8中从iframe外部调用iframe中的函数
- 3. 从iframe外部调用iframe中的函数
- 4. 从函数内部调用外部函数 - Javascript
- 5. Javascript:如何调用外部函数从内部函数返回?
- 6. 在家长的JavaScript外部文件中调用函数到iframe
- 7. 来自外部域iframe的Javascript调用函数
- 8. 从iframe调用父javascript函数
- 9. 从iframe调用非全局JavaScript函数
- 10. 如何从iFrame调用Javascript函数?
- 11. 如何从iframe中调用Javascript函数?
- 12. 从window.opener在iframe中调用javascript函数
- 13. JavaScript函数和iframe调用
- 14. 使用Codeigniter调用外部Javascript函数
- 15. 通过url调用外部javascript函数
- 16. 来自外部的调用JavaScript函数
- 17. OnmouseOver Jquery/Javascript调用外部函数
- 18. 未调用外部函数 - javascript
- 19. CakePHP的:调用外部JavaScript函数
- 20. 调用外部javascript函数frm JSP
- 21. 来自外部javascript文件的驻留在iframe中的调用javascript函数
- 22. AJAX和iFrame:从iFrame内部调用AJAX来更新外部DIV
- 23. JS:从函数外部调用变量
- 24. 从类方法调用“外部”函数
- 25. ReactJS。从外部变量调用函数
- 26. ReactJS - 从外部调用函数
- 27. 如何从jQuery的外部函数调用内部函数
- 28. 调用外部函数C
- 29. Node.js外部函数调用
- 30. VIM函数外部调用
re。来自外部文件的呼叫,请参阅下面的答案中的更新[2]。 – johnhunter 2011-03-05 09:27:42