2017-01-05 100 views
0

這是2017年,它是HTML5的時代!在HTML5中,換行符是<br>,而不是<br />。但是在它的一生中,我無法讓CK編輯以<br>爲由拒絕<br />如何在CKeditor中使用<br>而不是<br />

錯誤的<br />正在給我帶來各種各樣的問題。其中:

  • 失敗代碼驗證
  • (在Firefox)而與<br />創建的代碼塊上使用JavaScript的innerHTML的,返回<br>的代替 - 這打亂了關於修改比較。

     

我發現有關該問題的這個老論壇條目(在相關的程序,而不是在CKEDITOR本身):
http://ckeditor.com/forums/Support/are-not-validated-W3C-validator-How-change

但建議的修復(在配置改變config.docType文件)不起作用!

我在頂層config.js和core/config.js中嘗試了一堆不同的docTypes。

頂級config.js,我想:

config.docType = '<!DOCTYPE html>';

核心/ config.js,我想: docType: '<!DOCTYPE html>',

但沒有任何作品! :(

我也試圖追捕的文件衆人<br />情況,但沒有發現任何CKEDITOR的核心組成部分。我相信,該<br />字符串被創建動態??

如何我能得到CKEDITOR吐出<br>而不是<br />

謝謝!

+0

更易於在存儲到數據庫之前替換html輸出而不是更新ckeditor代碼---或者使用與[froala](https://www.froala.com/wysiwyg-editor)不同的東西 –

+0

它對CKeditor來說似乎不是一個很大的修改,哈哈! 您是否建議CKeditor如此笨拙,笨拙並且文檔記錄很糟糕,以至於作爲一個代碼來調整這樣一個簡單的事情基本上是無用的? :o 感謝您提供關於替代所見即所得HTML編輯器的建議 - 雖然我很猶豫跳上船,除非別的東西遠遠優於CKedit ...意見歡迎! –

+0

和Froala需要許可...沒有bueno,因爲我打算將我的項目作爲開放源代碼發佈下來......迄今爲止,CKedit給我留下了非常深刻的印象。 –

回答

0

耶,花了一些鐵桿谷歌搜索(很難短語搜索),但我找到了答案!我希望這會幫助別人。

只需添加:

CKEDITOR.on('instanceReady', function(ev) { 
     // Output self-closing tags the HTML5 way, like <br> 
     ev.editor.dataProcessor.writer.selfClosingEnd = '>'; 
    }); 

它做什麼,從我的理解,是等待覈心插件「HTML輸出作家」要加載 - 當它是,它改變了「作家」 ,這是每個編輯器實例的屬性。上述方式將修改應用於所有編輯器,但也可以對單個編輯器實例進行修改(儘管我很難想象爲什麼有人會想要修改後者)。

有關更多信息,請參閱CKEditor4文檔: How Do I Output HTML Instead of XHTML Code Using CKEditor?

好吧,CKEditor岩石!:D

相關問題