Я реализую CodeMirror (http://marijn.haverbeke.nl/codemirror/) на странице, где document.domain должен быть объявлен (из-за другого IFRAMES на странице).
CodeMirror генерирует динамический IFRAME для обеспечения, синтаксис выделил редактирование кода. Проблема состоит в том, что IE подбрасывает 'Доступ запрещен' (другие браузеры прекрасны) в следующей части кода зеркала кода:
this.win = frame.contentWindow;
...
var doc = this.win.document; <-- ERROR
doc.open();
doc.write(html.join(""));
doc.close();
Оказывается, что IE не наследовал document.domain от родительского IE. Я могу установить document.domain в содержании IFRAME, но IE подбрасывает ошибку, прежде чем я смогу даже установить содержание. Какие-либо идеи, как заняться этой проблемой?
Наконец-то все заработало. Взлом, вдохновленный кодом TinyMCE.
var u = 'javascript:(function(){document.open();document.domain="' + document.domain + '";var ed = window.parent.CodeMirror_boilerplate;document.write(ed);document.close();})()';
frame.src = u;
Устанавливает document.domain в SRC, а не в DOM.