FineUI 官方论坛

标题: 【已解决】关于ueditor在IE9中无法编辑的问题 [打印本页]

作者: 消失的键盘    时间: 2013-5-28 13:16
标题: 【已解决】关于ueditor在IE9中无法编辑的问题
环境:IE9,360浏览器6.1,chrome,safari

在页面中使用Window
  1. <x:Window ID="Window1" AutoScroll="true" CloseAction="Hide" runat="server" IsModal="true" Hidden="true" Target="Top"
  2.         EnableResize="true" EnableMaximize="true" EnableIFrame="true" IFrameUrl="about:blank"
  3.         Width="650px" Height="450px" OnClose="Window1_Close">
  4.     </x:Window>
复制代码
然后在Window加载iframe,在iframe页面里面使用ueditor。第一次加载的时候 没有问题,关闭window后重新再打开,则此时ueditor无法被编辑,焦点也无法移到ueditor的编辑器中。想问一下,这个问题怎么解决?

iframe:

  1. <x:ContentPanel ID="ContentPanel1" runat="server"  ShowBorder="true" BodyPadding="5px"
  2.                         ShowHeader="true" EnableBackgroundColor="true" Title="新闻内容">
  3.                         <textarea id="txb_Content" name="txb_Content" rows="1" cols="1"> </textarea>
  4.                     </x:ContentPanel>


  5. <asp:HiddenField ID="hidden_Content" runat="server" />


  6. <script type="text/javascript">
  7.         window.UEDITOR_HOME_URL = "<%= ResolveUrl("~/ueditor/") %>";
  8.     </script>
  9.     <script type="text/javascript" src="/ueditor/editor_config.js"></script>
  10.     <script type="text/javascript" src="/ueditor/editor_all.js"></script>
  11.     <script type="text/javascript">
  12.         var editor = new UE.ui.Editor({
  13.             minFrameHeight: 150,
  14.             initialFrameWidth: '100%',
  15.             initialFrameHeight: 350,
  16.             autoFloatEnabled: false
  17.         });
  18.         editor.render("txb_Content");

  19.         // 提交数据之前同步到表单隐藏字段
  20.         X.util.beforeAjaxPostBackScript = function () {
  21.             editor.sync();
  22.         };

  23.         editor.ready(
  24.             function () {
  25.                 //需要ready后执行,否则可能报错
  26.                 var contents = document.getElementById("<%=hidden_Content.ClientID%>").value;
  27.                 window.setTimeout(function () {
  28.                     editor.setContent(contents);
  29.                 }, 100);
  30.             });
  31.     </script>
复制代码



另外,ueditor在单独页面中,无论加载多少次,使用都没有任何问题。




作者: 消失的键盘    时间: 2013-5-28 14:26
另外在IE9兼容性模式下面也没有问题。不知道三石兄能不能修复这个bug?
作者: sanshi    时间: 2013-5-28 16:57
我刚才在Chrome下测试了,没发现这个问题。

为了更快的解决问题,请按照如下步骤创建重现问题的示例:
1. 到 https://fineui.codeplex.com/releases 下载FineUI空项目 EmptyProjectNet20_FineUI;
2. 基于空项目创建重现问题的示例,并打包上传。

注:涉及数据读取操作时,请在内存中模拟实现,不要连接数据库。
作者: 消失的键盘    时间: 2013-5-28 17:42
本帖最后由 消失的键盘 于 2013-5-28 17:44 编辑

论坛上传附件有限制,我改用邮箱发给你了。发到你的QQ邮箱里面的,请查收!谢谢
最好你能在win7 IE9的环境下测试一下。多谢

作者: sanshi    时间: 2013-5-28 22:13
消失的键盘 发表于 2013-5-28 17:42
论坛上传附件有限制,我改用邮箱发给你了。发到你的QQ邮箱里面的,请查收!谢谢
最好你能在win7 IE9的 ...

刚试了你的例子,在Firefox,Chrome,IE7/8下都是好的。 IE9下的确有问题,没有输入焦点,有可能是ueditor的问题,明天再看
作者: 消失的键盘    时间: 2013-5-29 09:42
sanshi 发表于 2013-5-28 22:13
刚试了你的例子,在Firefox,Chrome,IE7/8下都是好的。 IE9下的确有问题,没有输入焦点,有可能是uedito ...

是的,我已经做过测试,唯独在IE9 下有问题。另外在装有IE9的系统下 其他浏览器都有问题。

另外我感觉不是ueditor的问题。因为如果把ueditor直接放在firstpage里面(与http://fineui.com/demo/#/demo/aspnet/ueditor.aspx 一样)是不会有问题的。只有在我给你的demo里面,使用window hide(3种情况都一样)以后,才会出现这个问题。感觉是 window 重新弹出以后, texteara 未被 ueditor 的 js 重新实例化一样。不知道我猜得有没有错。
作者: sanshi    时间: 2013-5-29 17:11
已确认是个BUG,示例会在下个版本更新。

+更新aspnet/ueditor.aspx、aspnet/ueditor_two.aspx.
                -修正IE9下编辑框无法获取焦点的问题,将UEditor的初始化代码放在onReady函数中(消失的键盘 )。

可以下载源代码看改动:
  1. <script type="text/javascript">
  2.         var editor;
  3.         function onReady() {
  4.             editor = new UE.ui.Editor({
  5.                 initialFrameWidth: '100%',
  6.                 initialFrameHeight: 350,
  7.                 minFrameHeight: 350,
  8.                 autoFloatEnabled: false,
  9.                 focus: true
  10.             });
  11.             editor.render("UEditor1");
  12.         }


  13.         // 提交数据之前同步到表单隐藏字段
  14.         X.util.beforeAjaxPostBackScript = function () {
  15.             editor.sync();
  16.         };

  17.         // 更新编辑器内容
  18.         function updateUEditor(content) {
  19.             window.setTimeout(function () {
  20.                 editor.setContent(content);
  21.             }, 100);
  22.         }
  23.     </script>
复制代码

作者: syy_004    时间: 2013-6-7 20:07
求大神指教   我用不起ueditor




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4