Mit Squire, einem Lightweight HTML5 Rich Text Editor

Was Sie erstellen werden

Was ist Knappe??

Squire ist ein extrem leichter HTML5-Rich-Text-Editor, der am besten für die umfangreichen Eingabeformulare Ihrer Anwendungen und die einfache Dokumenterstellung geeignet ist. Sie bietet Browser-übergreifende Unterstützung, vermeidet jedoch bewusst die Komplexität der Unterstützung älterer Browser. Es funktioniert am besten mit Opera 10, Firefox 3.5, Safari 4, Chrome 9 und IE8.

Squire ist nicht zum Erstellen und Bearbeiten von WYSIWYG-Webseiten gedacht. Für viele Rich-Text-Eingaben und Webanwendungen ist Squire jedoch genau das, was Sie brauchen. Es gibt die Kraft ohne Aufblasen. Es ist auch MIT für die flexible Wiederverwendung lizenziert.

In diesem Tutorial zeige ich Ihnen, wie Sie Squire herunterladen und Beispieleingabeformulare damit erstellen. Wenn Sie Squire in Aktion sehen möchten, besuchen Sie die Demo.

Woher kam Squire??

Das FastMail-Team hat Squire entwickelt, um die Anforderungen an den Webmail-Editor zu vereinfachen. FastMail ist eine hervorragende Cloud-basierte E-Mail-Alternative zu Google Mail. Ich bin täglicher FastMail-Benutzer. Da es in Australien ansässig ist und anderen Gesetzen unterliegt als in den USA, ist der Schutz der Privatsphäre für FastMail-Benutzer geringfügig verbessert. Sie können hier mehr darüber lesen: FastMail sagt, es ist frei von NSA-Überwachung.

Wie das FastMail-Team in seinem Blog schrieb, benutzten sie zuvor CKeditor:

Obwohl es keine schlechte Wahl ist, wurde sie wie die meisten anderen Editoren für das Erstellen von Websites und nicht für das Schreiben von E-Mails entwickelt. Durch das einfache Einfügen eines Bildes als Standardwert wurde ein Dialogfeld mit drei Registerkarten und mehr Optionen angezeigt, als Sie für möglich hielten. Außerdem gab es ein eigenes UI-Toolkit und ein eigenes Framework, das wir stark anpassen mussten, um sich an den Rest anzupassen die neue Benutzeroberfläche, die wir bauten; ein schmerz zu erhalten.
Bei unserem Fokus auf Geschwindigkeit und Leistung waren wir auch besorgt über die Codegröße. Die Version von CKEditor, die wir für unsere vorherige (klassische) Benutzeroberfläche verwenden, die nur die Plugins enthält, die wir benötigen, ist ein Download von 159 KB (wenn gzipped; unkomprimiert sind es 441 KB). Das ist nur der Code, ausgenommen Stile und Bilder.

Sie beschlossen, bei Null anzufangen und Squire zu bauen. Mit nur 11,5 KB JavaScript nach Minification und gzip (34,7 KB unkomprimiert) und ohne Abhängigkeiten ist Squire extrem leicht. 

Die Ergebnisse sind beeindruckend. Das kombinierte Codegewicht, das zum Laden des gesamten Bildschirms für Zusammenstellung, der Basisbibliothek, der E-Mail- und Kontaktmodelle sowie des gesamten UI-Codes zum Rendern des gesamten Bildschirms erforderlich ist, beträgt jetzt nur noch 149,4 KB (459,7 KB unkomprimiert) - weniger als der CKEditor allein.

Squire hat keine Abhängigkeiten. Es gibt keine XHR-Wrapper-, Widget-Bibliothek- oder Lightbox-Überlagerungen. Es gibt keine Benutzeroberfläche für eine Symbolleiste, so dass zwei UI-Toolkits nicht aufgebläht werden. Es ist nur ein einfaches

Aber beim Laden ist es JQuery $ (Dokument) .ready Funktion ersetzt die Statik #foo Textfeld mit seiner SquireUI.

  

Die Toolbar-Konfiguration ist mit einer recht komplexen Konfiguration von JQuery, AJAX, HTML5 und CSS implementiert. Es lädt diese HTML-Seite, um die meisten Symbolleisten anzuzeigen: http://neilj.github.io/Squire/build/Squire-UI.html.

$ (div) .load (options.buildPath + 'Squire-UI.html') function () this.linkDrop = new Drop (Ziel: $ ('# makeLink'). first () [0], Inhalt: $ ('# drop-link'). html (), Position: 'Mitte unten', openOn: 'Klick');

Hier ist eine Teilmenge des Quellcodes für Squire-UI.html, damit Sie sehen können, was geladen wird:

Es wäre vielleicht schön gewesen, wenn sie eine vereinfachte Bootstrap-Symbolleiste als Add-On im Distributionscode bereitgestellt hätten, aber Sie können sicherlich aus den oben beschriebenen Demonstrationen lernen.

Ich hoffe, Sie finden Squire für Ihre eigenen Anwendungen hilfreich. Bitte zögern Sie nicht, Korrekturen, Fragen oder Kommentare zu posten. Sie können mich auch auf Twitter @reifman erreichen oder mich direkt per E-Mail kontaktieren.

ähnliche Links