我有一个包含 CKEDITOR 的页面。当我尝试在编辑器中应用任何样式(没有选择,只是我在编辑器中单击)时,它在除 chrome 之外的所有其他浏览器中工作。
Chrome 添加“?”标记在光标位置。
这是 ckeditor 的 bug 吗?
我试着找到
addCommand("bold")
/addCommand("strong")
功能,但未找到。
chrome 添加“?”如下标记:
<strong>?</strong>
我能解决那个问题吗?
请帮我解决这个问题
我有同样的问题,但我通过对 ckeditor.js 进行一些更改解决了
if(!!g[0]&& g[0].startOffset!= g[0].endOffset){
a.selectRanges(g);c.removeCustomData("doc_processing_style");
}
在 selectRange 之前添加 if 条件。
我和 ckeditor 有同样的问题。我通过用空字符串替换特殊字符来解决问题。
我是如何解决这个问题的:
文件美化后,找到了解析hrml的函数。下面是函数。 (在您的文件中搜索“htmlParser.text.prototype”)
a.htmlParser.text.prototype = {
type: 3,
writeHtml: function(l, m) {
var n = this.value;
if (m && !(n = m.onText(n, this))) return;
l.text(n);
}
};
我已经替换了上面函数中的行
var n = this.value;
与
var n = this.value.replace(/[^(\x20-\x7F)]*/g, '');
这一行将特殊字符替换为空。这解决了我的问题。这可能是一个黑客,但它对我有用。
希望这能节省一些人的时间。
注意:为了保持文件缩小,请在不美化文件的情况下搜索确切的代码并添加您的代码。
谢谢
之前在 CKEditor 论坛上被问到。你可以在这里找到它:http://ckeditor.com/forums/Support/Question-Mark-after-pressing-button-toolbar 希望有帮助
请在ckeditor.js文件中找到以下代码
CKEDITOR.tools.repeat
你会发现那里有'?'像这样重复计数
CKEDITOR.tools.repeat("?",7)
在您的情况下可能是 7 或其他值。
解决方法:请将此值设置为'0'。它会挑衅地工作。