我想通过 chrome 扩展来编辑 iframe 的内容,但因为 iframe 的 contentWindow/contentDocument 返回未定义而无法编辑。一直在寻找答案,据我所知,如果 iframe 从一开始就存在于页面上,它很容易修复,但事实并非如此。有问题的 iframe 是 iframe 形式的 gmail 撰写文本区域,它是动态添加到 DOM 中的。有没有办法通过 chrome 扩展来做到这一点?
编辑:对不起。Rob W 让我意识到 contentDocument 确实可以访问。我在这里要做的是在 Gmail 中添加一些额外的功能,在工具栏中有一个按钮,可以在撰写窗口中添加一些 html。我现在让按钮部分工作,它添加了 html,但它并没有像它应该的那样在插入符号处执行它,因为我无法访问 contentWindow 来执行此操作:
range = iWindow.getSelection().getRangeAt(0);
node = range.createContextualFragment(html);
range.insertNode(node);
有什么解决办法吗?