这是情况.... 我有一个iframe,它位于我的客户端,并且iframe内容位于我的服务器中。 所以,当用户做一些事情时,我的iframe就会出现,他们可以键入一些东西,并发布到我的服务器。但问题是...... iframe本身不能消失。 我想要做的唯一事情就是提交并隐藏iframe。我可以在客户端执行一个按钮来隐藏我的iframe,但iframe无法控制客户端的js。客户端也无法控制我的iframe上的按钮。 所以,我想在客户端做一个按钮,并提交按钮的某种命令....但问题是我该怎么做?谢谢。如何调用iframe来执行某些操作?
1
A
回答
3
iFrame和父文档可以通过JavaScript通信:
- 的IFRAME可用于这样的文件:
window.frames["iframe_name"]
。这是iframe的window
对象,从这里开始,您可以对js进行任何操作。 - 父文档的窗口可通过
window.opener
访问iframe。再次,这是母文档的window
。
也许this question也可以帮助你。
0
甚至更强的鲁棒性:
function getIframeWindow(iframe_object) {
var doc;
if (iframe_object.contentWindow) {
return iframe_object.contentWindow;
}
if (iframe_object.window) {
return iframe_object.window;
}
if (!doc && iframe_object.contentDocument) {
doc = iframe_object.contentDocument;
}
if (!doc && iframe_object.document) {
doc = iframe_object.document;
}
if (doc && doc.defaultView) {
return doc.defaultView;
}
if (doc && doc.parentWindow) {
return doc.parentWindow;
}
return undefined;
}
和
...
var el = document.getElementById('iframe_id');
// or
var el = window.frames["iframe_name"];
// or
var el = window.frames[0];
getIframeWindow(el).targetFunction();
...
相关问题
- 1. 如何在元素调整大小后执行某些操作
- 2. 如何仅在从命令行调用文件时执行某些操作
- 3. startActivity完成后执行某些操作
- 4. 如何使用任务队列稍后执行某些操作?
- 5. 如何在用银线条删除后“执行某些操作”
- 6. 如何在Unity3d中运行进程时执行某些操作
- 7. Nodejs读取某些进程的stdout并执行某些操作
- 8. 如何才能在AJAX调用之后加载DOM后执行某些操作?
- 9. 如何让Greasemonkey在AJAX调用返回时执行某些操作?
- 10. 当某个时间到来时执行一些操作
- 11. 如何查找文件中的某些单词然后执行某些操作?
- 12. 如何限制某些行的操作?
- 13. 在完成操作后执行某些操作
- 14. 如何在ASP.NET/WCF中定期执行某些操作?
- 15. JS - 如何在函数结束时执行某些操作
- 16. 如何在iOS中旋转屏幕时执行某些操作?
- 17. 空JavaScript函数如何实际执行某些操作?
- 18. 如何让CheckBox在检查时执行某些操作?
- 19. 如何在Javafx关闭时执行某些操作?
- 20. 如何在显示JFrame后执行某些操作
- 21. 如何在GridLayout呈现后执行某些操作?
- 22. 如何在stopService后执行某些操作?
- 23. 如何在ASP会话超时时执行某些操作?
- 24. 如何在knockout.js中更新值后执行某些操作?
- 25. 如何强制按钮自动执行某些操作?
- 26. 如何在角度订阅后执行某些操作
- 27. 如何在几秒钟内执行某些操作?
- 28. 如何在浏览器后执行某些操作?
- 29. 如何在Express.js中发送响应后执行某些操作?
- 30. 如何针对某些对象实例执行操作?
umum,还是不明白,让说我有一个按钮呼叫“测试”的iframe里面,我怎么能叫的在iframe之外的“测试”按钮点击()动作。 – DNB5brims
@Ted'window.frames [“iframe_name”]。document.getElementById('iframe_button')。click()' –
我明白了,但是为什么要使用方形的backet呢? – DNB5brims