我正在开发一个简单的 Chrome 扩展程序,可以更改现有网页。不幸的是,该网页使用了一些 iframe,这使得访问 DOM 变得更加困难。
我想访问 mainFrame
中的元素,但其内容似乎是动态生成的(不太确定这是如何工作的)。 src
指的是空的 blank.htm
。
document.getElementById("mainFrame").contentDocument
这获取空blank.htm
的内容
<frame src="blank.htm" name="mainFrame" id="mainFrame" title="mainFrame" />
这样:
document.getElementById("mainFrame")
我可以看到 DOM,但我不知道如何进一步选择元素。我也许可以使用 ...('mainFrame").childNodes[i]
访问它们,但我更愿意使用它们的类或 id 选择它们。
最佳答案
无法从父文档访问 iframe dom 内容。你唯一能做的就是相反的,是的,你可以从 iframe 访问父文档的 DOM。由于安全原因,这些都受到限制。但您可以从 chrome 扩展功能访问它们(如果您正在使用 chrome 扩展)。
有关在 Chrome 扩展程序中访问 iframe 内容的更多详细信息,请关注 link
关于javascript - 从 'dynamic' iframe 访问 DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40567612/