2010-09-04 16 views

Odpowiedz

1

To jest domyślne zachowanie CKEDITOR dla dużej ilości znaczników. Aby tego uniknąć, otwórz plik ckeditor.js i wyszukaj: n.setRules ("title", {indent: false, breakAfterOpen: false}); i dodaj tę zasadę: n.setRules ('h2', {indent: false, breakAfterOpen: false}); Możesz dodać tę regułę dla każdego znacznika chcesz

+0

Dziękujemy! Czy jest jakiś sposób na zrobienie tego z PHP 'side' zamiast edycji plików CORE? – Francisc

+0

Chciałbym również wiedzieć, jak to zrobić poprzez konfigurację PHP – neokio

+3

Zmiana źródła wtyczek/bibliotek nie jest właściwa. Ponieważ gdy ktoś inny zaktualizuje bibliotekę w twojej aplikacji, ktoś inny będzie musiał dowiedzieć się, dlaczego została zerwana istniejąca funkcjonalność. – cherouvim

20

sposób to zrobić to bez modyfikowania źródło CKEditor jest wykonanie następujących czynności:

CKEDITOR.on('instanceReady', function(ev) 
    { 
     ev.editor.dataProcessor.writer.setRules('p', 
     { 
      indent : false, 
      breakBeforeOpen : true, 
      breakAfterOpen : false, 
      breakBeforeClose : false, 
      breakAfterClose : true 
     }); 
    }); 

Aby uzyskać więcej informacji, patrz:

http://cksource.com/forums/viewtopic.php?f=6&t=14493 http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Output_Formatting

+4

+1 Nie modyfikuj kodu źródłowego! –

+0

+1 Myślę, że pytanie dotyczyło tagu 'h2', a nie tagu' p', ale odpowiedź jest świetna. –