IE9: доступ запрещен при настройке document.domain

У меня возникла проблема при использовании document.domain с CLEditor в IE9. Когда я добавляю document.domain, я получаю сообщение об ошибке «SCRIPT5: доступ запрещен». Он отлично работает с Firefox, а также когда я удаляю document.domain. Я по-прежнему не использовал кросс-поддоменные фреймы, все фреймы находятся в одном домене.

Как это исправить, не удаляя document.domain?

вот как я настраиваю document.domain:

  <script type="text/javascript" src="jquery-1.7.1.min.js"></script>
  <script type="text/javascript">
    document.domain = 'mydomain.com';
  </script>
  <script type="text/javascript" src="jquery.cleditor.js"></script>

Вот часть кода CLEditor, где появляется ошибка:

      // Create a new iframe
    var $frame = editor.$frame = $('<iframe frameborder="0" src="javascript:true;" id="iframe">')
      .hide()
      .appendTo($main);

    // Load the iframe document content
    var contentWindow = $frame[0].contentWindow,
      doc = editor.doc = contentWindow.document,     // here is the error message
      $doc = $(doc);

Вот полный исходный код CLEditor: http://premiumsoftware.net/cleditor/jquery.cleditor.js


person usef_ksa    schedule 02.05.2012    source источник


Ответы (1)


Чтобы использовать document.domain, необходимо установить одну и ту же строку на обеих сторонах связи — здесь, установить как в iFrame, так и в родительском.

person buley    schedule 03.05.2012
comment
Я так и не начал использовать iframes на разных поддоменах. iFrame и родитель находятся в одном субдомене. оба они в одном домене и на одной странице. Я думаю, что IE9 не разрешает связь, если iFrame создается с помощью JavaScript следующим образом: var $frame = editor.$frame = $('‹iframe frameborder=0 src=javascript:true; id=iframe›') - person usef_ksa; 03.05.2012