javascript - 使用纯 JavaScript 获取 iframe 的内容

标签 javascript iframe

我已经可以使用 jQuery 获取 Iframe 的内容,但我想学习如何使用纯 JavaScript 获取它。

这就是我目前所拥有的。

 var frame = document.getElementById('awc_frame');
 var easyBB = frame.contentWindow.document.body.innerHTML;
 easyBB.getElementById('chatbox-title').innerText="Chatbox";

我做错了什么,请帮忙。原来框架没有ID,我已经试过了

var frame = document.frames['awc_frame'];

跨浏览器效率高吗?然后如何获取 contentWindow?只是一些解释,所以我可以用 JavaScript 而不是 jQuery 来做到这一点。 jQuery 版本是这个

var frame = $('#avacweb_chat iframe');
var easyBB = $('#chatbox-title',frame.contents()).text('Chatbox');

最佳答案

如果它在同一个域中,试试这个。如果 iframe 的来源与您正在查看的窗口不同,它不会让您访问 iframe 内容。

var iframe = document.getElementById("awc_frame");
var iframe_contents = iframe.contentDocument.body.innerHTML;

使用 jsfiddle iframe 查看同一域上的页面的工作示例:

http://jsfiddle.net/tqAL3/1/

关于javascript - 使用纯 JavaScript 获取 iframe 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34932338/

相关文章:

javascript - 我可以使用 iframe 来解决内存泄漏吗?

javascript - CSS 不适用于动态创建的文本字段

javascript - 如果我的网站通过 iframe 打开第 3 方网站,第 3 方网站能否成功设置自己的 cookie?

iframe - 如果 selenium webdriver 仅具有 src 属性,如何让其等待 iframe 完全加载

javascript - 如何将视频放入 iframe 中?

javascript - 为什么我的 reducer 没有收到我的操作? (使用 React 和 Redux)

javascript - 确定 iframe 内的鼠标位置,但包括父级

javascript - 什么是 IE6 同源策略

javascript - angularJs:无法查看表单提交的数据

javascript - 使用 jQuery 从 URL 弹出 iFrame