Ich habe mal ein wenig getüftelt und hoffentlich eine Lösung für IE10 gefunden:
- zuerst einmal habe ich überall
tagName durch
nodeName ersetzt
- dann mußte noch das Abrufen der Attribute des Dokument-Objekts unterbunden werden (
if(settingsNode.localName) verhindert den Zugriff auf das Dokument-Objekt)
Dann blieb aber noch das Problem, daß durch
im IE10 plötzlich Rollbalken erschienen, die man nur durch style-Angaben für das body-Tag hätte ausmerzen können. Dann habe ich aber gefunden, daß es nicht nur designMode gibt sondern auch das HTML5-Attribut contenteditable, bei dem der IE keine Rollbalken produziert, aber der Inhalt genauso editierbar ist, also
Code: Alles auswählen
var contenteditable = '';
if (!ie) bse_conWin.document.designMode = 'on';
else contenteditable = 'contenteditable="true"';
und contenteditable wird ins body-Tag gehängt. Das ist nötig, weil das Attribut bei Firefox zwar theoretisch funktioniert, dadurch aber andere Fehler provoziert werden.
Anbei die fertige Datei _editor/editor.js
zum Testen!
Bei mir funktioniert es mit IE8, IE10, Safari5 und FF23.
Und auch im IE11, dort funktioniert auch endlich das Undo
dafür gehen andere Dinge (noch) nicht...
Forciertes Neuladen (Refresh) des Editor-Fensters mittels
Strg+F5 nicht vergessen!