1

在IE9上使用带有CLEditor的document.domain时出现问题。当我添加document.domain时,出现错误消息“SCRIPT5:Access is denied。”。它适用于Firefox,当我删除document.domain。我仍然没有使用跨子域iframe,所有的iframe都在同一个域中。IE9:设置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> 

这里是错误的apears代码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

回答

0

要使用document.domain,它需要在通信双方设置为相同的字符串 - 在这里,在iFrame和父母中都设置。

+1

我仍然没有开始在不同的子域上使用iframe。 iFrame和父母在同一个子域中。他们都在相同的域和相同的页面。我认为IE9不允许通信,如果iFrame是由JavaScript创建的,如下所示:var $ frame = editor。$ frame = $('