2014-04-08 12 views
5

Ich versuche, einen WYSIWYG-Editor mit execCommand zu implementieren (ich kenne viele WYSIWYG-Editoren existieren, aber keine von ihnen sind gut genug für mich). Jetzt funktioniert alles einwandfrei, aber wenn ich den Befehl backColor benutze, scheint es nicht zu funktionieren. Kann ich den Befehl execCommand rückgängig machen, um Aktionen rückgängig zu machen, die nicht mit execCommand ausgeführt wurden?

Was ich dachte, zu tun, ist einfach Hintergrund CSS auf ein Element gesetzt, und fügen Sie es irgendwie mit der Undo/Redo-Warteschlange, so Ctrl +Z die individuelle Veränderung ändern zurück.

Ist irgendwo zu tun? oder ich bin beschränkt auf ONLY rückgängig machen/wiederholen exec Befehle?

Ich bin nur an einer Chrome-Lösung interessiert, IE & FF wird nicht unterstützt.

Antwort

0

meine anwser vielleicht nicht die hübscheste aber Gabeln fein :)

i verwendet

var undo = []; // array 
var redo = []; 
// to store the undo and redo data 
// and added event listener to textarea 

document.getElementById("textarea").oninput = function(){ 
    // do something 
} 

http://jsfiddle.net/7z6kow73/1/