Fügen Sie nur plain-text in editierbaren div
ich muss in der Lage sein, um es einem Benutzer erlauben, zum einfügen in einen editierbaren div - (über was auch immer der Benutzer: mit der rechten Maustaste klicken und "einfügen", Tastaturkürzel, usw.), aber ich möchte, um Sie zu verwerfen formatieren und nur den reinen text.
ich kann nicht mit einer textarea, da das div wird erlauben, grundlegende Formatierungen (Fett und Kursiv), wenn er vom Benutzer ausgelöste Ereignisse.
den onbeforepaste Veranstaltung sah vielversprechend aus, aber laut quirksmode die Unterstützung ist sehr begrenzt, da unbrauchbar zu sein.
tyia für Anregungen
- Dank der beiden - sollte mich in die richtige Richtung gehen versucht, um die Antworten als hilfreich, aber scheinbar bin ich zu neu :/
- Möglich, Duplikat der Javascript-trick für "paste as plain text" in execCommand
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist schwierig, aber nicht unmöglich. Was Sie tun können, ist ziemlich verwickelt und ein bisschen ein hack, funktioniert auch in Firefox 2+, IE 5.5+ und aktuelle WebKit-Browser wie zum Beispiel Safari 4 oder Chrome (ungetestet auf ältere Versionen). Neuere Versionen von TinyMCE und CKEditor verwenden diese Technik auf Ihre iframe-basierte Editoren:
Beachten Sie, dass dies nur funktioniert die Tastatur einfügen von Ereignissen und nicht-Pasten aus dem Kontextmenü oder Bearbeiten von Menüs. Die
paste
Veranstaltung wäre besser, aber durch die Zeit, die es ausgelöst wird, es ist zu spät, leiten Sie die Einfügemarke in das Textfeld (in einigen Browsern zumindest).Für Strg+v ich überprüfte den Inhalt der editierbaren div-Element auf keyup. Sie können den Inhalt ändern, in diesem Fall. Ich war mit nicedit text-editor.
Dies funktionierte nicht für einfügen Rechte Maustaste-> einfügen.
Für 'einfügen' - ich musste um den Inhalt zu ändern mit
settimeout
.Es kann auch gehackt werden durch die Verwendung von javaScript. Hoffe, das hilft
Ich ein Beispiel erstellt, hier
Haben Sie versucht, das Ereignis wie "einfügen" oder "input" ? Dann können Sie mit regex zu Reise alle html-Tags
http://www.hscripts.com/scripts/JavaScript/remove-html-tag.php
Gibt es eine Diskussion über paste-Ereignis sollten Sie auch Lesen :
Fangen einfügen, Eingabe