【问题标题】:Ckeditor removes empty tagsckeditor 删除空标签
【发布时间】:2012-07-31 16:56:51
【问题描述】:

CKEditor 有问题 当用户插入空标签时:

(在 HTML 源代码模式下)

<a href="fds" class="doIt"></a>

当他按下源然后再返回时,标签“A”消失了。 我做了一点研究,发现这是因为ckeditor.js中有一个非常复杂的函数 检查元素内是否有值。如果没有,CKEditor 会删除标签。

【问题讨论】:

  • 你试过去掉这个功能吗?
  • 这对我的代码造成了严重破坏,因为我的一些所谓的空 div 实际上有背景图像,但 CKEditor 并不关心,并且仍然将它们删除......

标签: javascript jquery ckeditor fckeditor


【解决方案1】:

如果它不影响任何内容,请尝试在您的 A 标记中添加 &amp;nbsp;。 ckeditor 验证、清理和清理 html。显然它不喜欢空的锚标签。

【讨论】:

  • 是的,但我有一些解决方案,他会自动添加,而不是手动添加,这对我没有帮助
  • 我需要一些自动添加的解决方案,而不是手动添加,这对我没有帮助
  • 不是一个特别有用的答案。
【解决方案2】:

我找到了解决这个标签时遇到的特定问题的方法

我从CKEditor strips <i> Tag得到的原始答案

修复或调整(你可以命名)是在 ckeditors config.js 中设置以下内容:

// ALLOW <i></i>
config.protectedSource.push( /<i[\s\S]*?\>/g ); //allows beginning <i> tag
config.protectedSource.push( /<\/i[\s\S]*?\>/g ); //allows ending </i> tag

【讨论】:

    【解决方案3】:

    我知道这是旧的,但在 CKEDITOR 4.x 中你可以这样做:

    CKEDITOR.dtd.$removeEmpty.ElementHere = 0;
    

    将 ElementHere 替换为您想要的任何标签。 就像允许图标的空 i 标签一样:

    CKEDITOR.dtd.$removeEmpty.i = 0;
    

    【讨论】:

      【解决方案4】:

      尝试将此行添加到您的 config.js 文件中:

      CKEDITOR.config.allowedContent = true;
      

      希望对你有帮助

      【讨论】:

      • 不,这是 4.1 中引入的用于禁用 ACF 的新设置,但与空标签无关。
      • 这无济于事,我们这里专门讨论的是空 div,而不是 ckeditor 自动内容过滤,它已经被禁用了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      • 2013-08-17
      • 1970-01-01
      • 2015-09-11
      • 1970-01-01
      • 2011-12-06
      相关资源
      最近更新 更多