我正在玩jHTMLArea jQuery插件(http://jhtmlarea.codeplex.com/)。它使用嵌入式iframe創建一個漂亮的簡單WYSIWYG編輯器。我想擺脫iframe並使用ContentEditable div代替。jQuery編輯器插件 - exe的命令不被調用
問題是我可以讓它運行execcommand函數,以便將格式更改應用於編輯器。
看看http://jsfiddle.net/mwillmott/neXkk/看我的實施。
任何幫助,將不勝感激!
我正在玩jHTMLArea jQuery插件(http://jhtmlarea.codeplex.com/)。它使用嵌入式iframe創建一個漂亮的簡單WYSIWYG編輯器。我想擺脫iframe並使用ContentEditable div代替。jQuery編輯器插件 - exe的命令不被調用
問題是我可以讓它運行execcommand函數,以便將格式更改應用於編輯器。
看看http://jsfiddle.net/mwillmott/neXkk/看我的實施。
任何幫助,將不勝感激!
如果您在Firefox中使用Firebug試用您的小提琴,答案的一部分將顯示在控制檯中。問題是,document.execCommand()
需要三個參數:
document.execCommand("Bold", false, null);
二是特定於IE的舊之一,幾乎可以永遠false
。最後一個是與該命令相關的值,在「粗體」的情況下,該值可以爲空,因爲粗體命令沒有值。
另一個更大的問題是,當按下工具欄按鈕時,選擇被破壞。您需要通過使用mousedown
事件而不是click
來防止這種情況發生,或者通過防止按鈕佔用焦點來避免這種情況。例如,請參閱this answer。
最後,我認爲有一個名爲editor
的屬性遺失了,應該是對包含可編輯內容的文檔的引用。
我在您的演示中添加了這些修補程序:http://jsfiddle.net/neXkk/2/。僅在Firefox中測試過,您可能需要針對IE進行更多的調整。