我在CMS上安装了TinyMCE,用户一直在粘贴内联数据类型的图像。这种事情:
<img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub/
/ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcpp
V0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7"
width="16" height="14" alt="embedded folder icon">
他们粘贴在一些非常大的图像中,内容存储在数据库中。这使得数据库的大小变得非常快,并且已经有可用的媒体上传组件,那么我怎样才能简单地阻止编辑器接受这种类型的图像呢?
答案 0 :(得分:2)
这取决于你想要什么。 由于您无法使用valid_elements和child_elements禁止使用此类元素,因此您必须采取其他方式。
案例1 :您不希望用户在onPaste上输入此类图片。
您需要使用粘贴插件并设置参数paste_pre
paste_preprocess : function(pl, o) {
window.console && console.log('Object', o);
window.console && console.log('Content:', o.content);
// modify o.content here -> remove images of that kind
o.content = o.content.substr(...)
}
案例2 :您希望在将图像保存到数据库之前将其过滤掉。
您可以使用tinymce setup paramter combined with onSave来摆脱它们。
根据您的描述,您似乎想要案例1。