Ich habe eine einzelne Seite App erstellt mit EmberJS.
Ich habe 3 Textareas auf der Seite.
Ich rendere den ckeditor, sobald das Textfeld in das dom eingefügt wurde, und ich markiere eine Eigenschaft auf der Controller-Aufzeichnung, dass der ckeditor gerendert wurde, sodass ich es nicht mehr als einmal rende.
Ich schaue sogar in das dom, um zu verifizieren, dass es dort derzeit keinen Editor gibt.
Beim Aktualisieren der Seite bekomme ich diesen Fehler zufällig:
%Vor%Ich weiß nicht, was es verursacht oder jetzt, um es zu verhindern. Wenn es diesen Fehler nicht wirft, erscheinen alle 3 Wörter gut.
Hier ist mein Code für den Editor:
%Vor%Ich verwende auch das "onChange" -Plugin für ckeditor, um ein "onChange" -Ereignis auszulösen, wenn sich etwas im Editor ändert und darauf reagiert.
Was ich versucht habe:
Was muss ich tun, um das Problem zu beheben?
BEARBEITEN
Hier ist die Stack-Trace: (Ich bin in der App auf der Ver Saite)
%Vor%BEARBEITEN # 2:
Hier ist eine Geige des spezifischen Bereichs der Anwendung, in der das Problem auftritt: Ссылка
Ich hatte ein ähnliches Problem mit AngularJS und jQuery UI Sortable mit mehreren CKEditors auf der Seite. Im Grunde ein Albtraum-Setup. Ich bin mir nicht sicher, ob das überhaupt zusammenhängt, aber ich dachte, ich würde es teilen, falls jemand anderes auf dieses Problem stoßen sollte. Es scheint ein Fehler in CKEditor ( Ссылка ?) Mehr als alles andere.
Immer wenn das DOM durch sortierbar geändert wird, habe ich Callbacks, die die CKEs (Long Story) zerstören / neu erstellen.
Ich habe CKEDITOR.remove(ckInstance)
aufgerufen, was zu demselben Fehler geführt hat, den Sie erhalten haben.
Ich habe auch versucht Calling% Co_de% und% Co_de% (um zu vermeiden, die DOM, die bereits geändert hatte zu aktualisieren) in meinem Callback, aber den Fehler ckInstance.destroy()
(und auch ckInstance.destroy(true)
irgendwo entlang der Linie) / p>
Ich konnte dieses Problem folgendermaßen beheben:
Cannot read property 'hasAttribute' of undefined
CKEditor scheint einen schrecklichen Job zu machen und kümmert sich um DOM-Änderungen unglaublich schlecht (ganz zu schweigen von Angular ...)
Hoffentlich rettet das jemand anderem die lächerliche Zeit, die ich brauchte, um es herauszufinden:)
Ich hatte das gleiche Problem mit Meteor und auch mehrere ckeditor-Instanzen. Dies ist ein häufiges Problem beim Laden von reaktiven DOMs im Allgemeinen, bei dem Ihre App Ihre javaScript-Aufrufe in der Reihenfolge verarbeitet hat, in der sie empfangen wurden, das DOM jedoch möglicherweise nicht vollständig geladen wurde.
Um das zu lösen, blockiere ich den Code einfach mit einem setTimeout .
%Vor%Tags und Links javascript html jquery ckeditor ember.js