2012-02-20 53 views

回答

1

如果您在Firefox中使用Firebug試用您的小提琴,答案的一部分將顯示在控制檯中。問題是,document.execCommand()需要三個參數:

document.execCommand("Bold", false, null); 

二是特定於IE的舊之一,幾乎可以永遠false。最後一個是與該命令相關的值,在「粗體」的情況下,該值可以爲空,因爲粗體命令沒有值。

另一個更大的問題是,當按下工具欄按鈕時,選擇被破壞。您需要通過使用mousedown事件而不是click來防止這種情況發生,或者通過防止按鈕佔用焦點來避免這種情況。例如,請參閱this answer

最後,我認爲有一個名爲editor的屬性遺失了,應該是對包含可編輯內容的文檔的引用。

我在您的演示中添加了這些修補程序:http://jsfiddle.net/neXkk/2/。僅在Firefox中測試過,您可能需要針對IE進行更多的調整。