我正在使用 tinyMCE 来编辑内容,它设置了清理规则,用于在回发数据之前清除哪些内容。但是在我的应用程序的其他区域,我需要显示相同的内容......而且我不想指望它在被放入数据库之前被正确删除的事实(它可能已经被另一个应用程序编辑过)。
因此,为了保持一致性(并且不必重复工作),我有没有办法直接在 javascript 中使用 tinyMCE 清理/清理器,以便我可以清理其他内容,然后再将其放入 DOM 中以供查看?像这样的东西:
var data = getDataViaAjax();
var content = tinymce.scrubber.cleanup(data);
$("someElement").append(content);
更新 - 如何做的例子
function parse(html) {
var settings = {
invalid_elements : "script,object,embed,link,style,form,input,iframe",
valid_elements:"a[href],img[src],li,ul,ol,span,div,p,br,blockquote,h1,h2,h3,h4,h5,h6,strong/b,em/i,li,ul,ol"
};
var schema = new tinymce.html.Schema(settings);
var parser = new tinymce.html.DomParser({}, schema);
var serializer = new tinymce.html.Serializer({}, schema);
return serializer.serialize(parser.parse(html));
}
最佳答案
没有预定义的方法来使用此功能。为了让 mceCleanup-Action 在没有 tinymce 的情况下工作,你必须自己编写它,但你应该能够使用预定义的 javascript 类并进行一些更改。查看开发人员 tinymce 版本(未压缩)。您可以从文件 Serializer.js
中的函数 serialize
开始,它可以在 classes/dom
目录中找到。
关于javascript - 我可以在不使用编辑器的情况下使用 tinyMCE 清理算法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10112664/