GRAYT插件在编辑器中打破了HTML

时间:2016-10-11 23:35:10

标签: javascript html ckeditor scayt

我有一个使用SCAYT / GRAYT插件的CK编辑器的实现,我发现了我认为可能是CK编辑器本身的错误。

我使用的是4.5.11版本

考虑这个HTML:

<tr>
    <td align="left" bgcolor="#e6e1ce" height="30" id="table_column1" valign="middle"><span style="font-family: verdana,geneva,sans-serif,arial;">Content</span></td>
    <td align="left" bgcolor="#f8f9f3" height="30" id="table_column2" valign="middle"><span style="font-family: verdana,geneva,sans-serif,arial; ">Content</span></td>
    <td align="left" bgcolor="#e6e1ce" height="30" id="table_column1_2" valign="middle"><span style="font-family: verdana,geneva,sans-serif,arial;">Content</span></td>
</tr>

当我的编辑器加载并呈现HTML内容时,SCAYT和GRAYT插件开始做他们的魔术并检查内容的拼写和语法问题。

问题出在GRAYT上。它将两个<td>元素的文本误认为是一个句子或短语,并试图在{<1}}周围放置所谓的以简单地告诉用户纠正他们的语法。

相反,它产生了这个结果:

<span>

显然,这是无效的HTML,并且是不受欢迎的。真正的问题是它打破了编辑器中表格的布局。

有人知道我能做些什么来解决这个问题吗?检查CK编辑器/ Web拼写检查器文档几乎没有提供有关如何控制此功能的信息。充其量,我可以禁用它,我认为这也是不受欢迎的。

1 个答案:

答案 0 :(得分:0)

您描述的问题是已知问题,我们计划在几周内开展工作。现在GrammarAsYouType(GRAYT)仅作为CKEditor 4+的插件提供,它是Alpha版本。目前,我们的团队正在努力改进。

作为一种解决方法,此时我们可以建议在SCAYT启动时关闭GRAYT功能:

config.grayt_autoStartup = false;

作为替代方案,您可以在表格中关闭语法检查(td,tr)。但请注意,它会影响SCAYT和GRAYT(<tr><td>标签中没有拼写检查)。

config.scayt_elementsToIgnore = 'tr,td';

有关可以更改的CKEditor 4+的所有SCAYT参数的更多详细信息,您可以在我们的网站上找到:http://wiki.webspellchecker.net/doku.php?id=scayt_parameters_ckeditor4