Ich verwende "redactor" ( Ссылка ) als meinen HTML-Editor. Wenn es auf einer Seite mehrere Editoren gibt, funktioniert das perfekt, wenn ich die einzelnen Editoren mit ihrer ID initialisiere. Aber wenn ich mit seiner Klasse initialisiere, funktioniert die erste nur perfekt.
Ich verwende folgenden Code, um dies zu initialisieren
%Vor%Der erste Editor funktioniert. Wenn ich die Format-Taste des 2. oder anderen Editors drücke, springt der Fokus zum ersten Editor.
Wenn ich jeden Editor einzeln mit seiner ID initialisiere, arbeiten alle Editoren.
aber ich wollte Klasse verwenden, da die Editoren der Seite dynamisch hinzugefügt werden.
Ich habe andere jquery-Plugins verwendet (mehrere Instanzen auf einer Seite, die die Klasse zum Initialisieren verwenden), es sollte eine Möglichkeit geben, dies in diesem Plugin zu tun.
vermisse ich irgendwelche? oder muss ich irgendeine Konfiguration tun?
Sie müssen jeden Editor einzeln initialisieren. Wenn Sie $(".htmlEditor").redactor();
verwenden, wählen Sie alle Editoren aus, die bereits in der DOM-Baumstruktur initialisiert wurden und mehrere Initialisierungsprobleme verursachen. Sie sagen, dass Sie die Editoren dynamisch hinzufügen möchten. Daher müssen Sie jeden neuen Editor separat initialisieren, auch ohne eine ID. Dazu müssen Sie das neueste dynamisch hinzugefügte Editor-DOM-Objekt abrufen und jQuery verwenden, um es zu initialisieren. Ich habe ein einfaches Beispiel geschrieben, das über eine Schaltfläche verfügt, die einen neuen Editor hinzufügt und bei jedem Klick initialisiert:
HTML
%Vor%JavaScript
%Vor%Hier ist mein Arbeitsbeispiel, das Sie testen und sehen können, dass es funktioniert: Ссылка
Und hier ist eine Bildschirmaufnahme, die zeigt, wie es funktioniert:
Tags und Links jquery redactor redactor.js