CKEditorで新しい段落を作成すると、前の段落の属性(スタイル、クラス)が新しい段落にコピーされます。これを防ぐ方法はありますか?
たとえば、中央の段落に書き込んでいて、Enterキーを押して新しい段落を作成する場合、ユーザーは新しい段落を単純なものにしたいと考えています。
デフォルトでは、前のものから何も「継承」しません。
編集
私はそれを(危険なほどテストされていない)Reinmarのヒントで動作させることができました。これが私が終わらせたものです。これが他の誰かに役立つことを願っています。ここで明白なエラーが表示された場合は、教えてください
CKEDITOR.on('instanceCreated', function(e) {
e.editor.on('key', function(evt) {
if (evt.data.keyCode === 13) {
// if we call getStartElement too soon, we get the wrong element
setTimeout(function () {
var se = e.editor.getSelection().getStartElement();
if(se.getName() == "span") {
var text = se.getText(); // Store text, we are about to nuke the spans
while (se.getName() == "span") { // possible infinite loop danger
se = se.getParent();
}
if (text.length == 0)
se.setHtml(" "); // It's important that this is not empty
else
se.setHtml(text);
}
debug(se.getHtml());
se.removeAttribute("class");
se.removeAttribute("mycustomattr");
se.removeAttribute("myothercustomattr");
window.bla = se; // useful for debugging
}, 10);
}
});
});