2013-05-07 99 views
0

我花了很多時間與在飛行中CKEDITOR修改CSS規則掙扎。但結果仍然不令人滿意:-)。如何(通過jQuery例如)更改CSS樣式規則內CKEDITOR

我想選擇CKEDITOR的DOM元素,並設置CSS樣式。然後我想保存CSS的信息(用於重新使用文檔)。

我看過,那最好的辦法就是使用jQuery。我試過了,但沒有成功。任何想法如何做到這一點?

非常感謝。

回答

2

我認爲你可以使用 '數據處理器' 這個:

CKEDITOR.replace('editor1', { 
    on: { 
     pluginsLoaded: function(event) { 
     event.editor.dataProcessor.dataFilter.addRules({ 
      elements: { 
       a: function(element) { 
        var attr = element.attributes; 
        if(attr.href && attr.href.indexOf('#') === -1) { 
        element.attributes.target = '_blank'; 
        } 
       }, 
       // remove script 
       script: function(element) { 
        return false; 
       } 
      } 
     }); 
     } 
    } 
}); 

文檔:http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-dataProcessor

+0

這是從版本4.0。但是我使用ice:inputRichText,它使用了CKEDITOR 3.x.我認爲,這不是我的解決方案。 – 2013-05-07 12:47:46

+0

'dataProcessor'在CKEDITOR 3中可用。*。你可以在conf中指定contentsCss嗎? – EpokK 2013-05-07 12:50:22

+0

CKEDITOR.instances ['editor1']。document.appendStyleText('span { color:red}');這是有效的,但通過刷新它會丟失,我不知道如何保存以供重新使用。 – 2013-05-07 13:13:28