ckeditor 3.6.4에서 각 img & 입력 요소에 대한 사용자 지정 id 특성을 추가하려고합니다. 지금까지 나는이img 및 입력 요소에 대한 사용자 지정 id 특성 추가
CKEDITOR.on('instanceReady', function(event) {
var editor = CKEDITOR.instances.editor;
editor.dataProcessor.htmlFilter.addRules(
{
elements: {
$: function (element) {
if ((element.name == 'img' || element.name == 'input') && CKEDITOR.instances.editor.mode == 'wysiwyg') {
if (!element.attributes.id){
var g = createID();
alert('new id: ' + g);
element.attributes.id = g;
}
}
}
}
});
});
같은 id 속성을 처리 할 수 dataProcessor.htmlFilter을 추가하고 난 비주얼 편집기에서 새 텍스트 필드를 추가 할 때 나는 새로운 ID를 얻는다. 그러나 내가 소스 모드로 설정하면 모드는 여전히 'wysiwyg'이지 'source'가 아니며 새로운 ID를 제공합니다.
어떻게하면 이중 동작을 방지 할 수 있습니까?
몇 가지 테스트를했다. 어떻게 든이
CKEDITOR.instances.editor.on('mode', function() {
// Code to execute when the user switches editing modes
alert('Changed to: ' + CKEDITOR.instances.editor.mode);
});
를 추가 그 htmlFilter 규칙 후에 발생합니다.
시도했지만 이상한 일이 벌어지고 있습니다. 나는 에디터 모드에서 계속 'wysiwyg'를 얻는다. 내 질문에 더 많은 데이터를 추가하겠습니다. – Vili