gpt4 book ai didi

javascript - CKeditor:如何在保存时平衡 HTML 标签? (它们平衡负载)

转载 作者:行者123 更新时间:2023-12-03 01:43:56 24 4
gpt4 key购买 nike

我一直遇到这样的问题:有人可能会将其他地方的代码粘贴到 CKeditor 中,使 HTML 标记保持打开状态,或者包含不应该存在的结束标记。

我注意到,当 View 从 Source 更改为 HTML 时,标签是平衡的。因此,这种情况会在加载时以及切换源时发生,但不会在保存时发生。

要查看此操作的实际情况,请查看源代码,输入一些带有开始标记但没有匹配的结束标记的 HTML,查看 HTML 版本,查看源代码 - 它已修复。

即使这意味着快速切换到源代码,然后切换到 HTML,我如何在保存时触发此标记平衡?

最佳答案

我不确定这是否是正确的方法。当我检查 Source 按钮时,它调用函数 CKEDITOR.tools.callFunction(52, this);

由于从 HTML Markdown 切换到预览模式,编辑器会自动关闭标签,在保存之前,您可以切换到预览模式以强制它关闭打开的标签。

var editor = CKEDITOR.replace( 'editor1', {} );

var isSourceOn = false;

function saveMyEditor() {
if(isSourceOn)
CKEDITOR.tools.callFunction(52, this);
}

editor.on('instanceReady', function( event ){
editor.on( 'mode', function( evt ){
if(editor.mode != 'source') {
isSourceOn = false;
} else {
isSourceOn = true;
}
});
});

Link to Codepen

编辑:你能试试这个吗:

var editor = CKEDITOR.replace( 'editor1', {} );
editor.commands.source.exec();

它正在正确切换源按钮。所以在保存之前,您可以切换到实时预览,然后保存。所以它会关闭标签。

关于javascript - CKeditor:如何在保存时平衡 HTML 标签? (它们平衡负载),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50718060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com