如何为动态生成的IFRAME设置document.domain?

Par*_*pra 5 javascript iframe internet-explorer access-denied

我采取CodeMirror(http://marijn.haverbeke.nl/codemirror/其中document.domain的需要声明(因为页面上的其他I帧)页面上).

CodeMirror生成动态IFRAME以提供语法突出显示的代码编辑.问题是IE在下面的代码镜像代码中抛出'Access Denied'(其他浏览器都没问题):

this.win = frame.contentWindow;
...
var doc = this.win.document; <-- ERROR
doc.open();
doc.write(html.join(""));
doc.close();
Run Code Online (Sandbox Code Playgroud)

事实证明,IE不会从父IE继承document.domain.我可以在IFRAME内容中设置document.domain但IE在我甚至可以设置内容之前抛出错误.有任何想法如何解决这个问题?

Par*_*pra 9

最后,它得到了它的工作.由TinyMCE代码启发的黑客攻击.

var u = 'javascript:(function(){document.open();document.domain="' + document.domain + '";var ed = window.parent.CodeMirror_boilerplate;document.write(ed);document.close();})()';
Run Code Online (Sandbox Code Playgroud)

frame.src = u;

它在SRC中设置document.domain而不是DOM.