Folosind Squire, un Editor de text îmbogățit HTML5 ușor

Ce veți crea

Ce este Squire?

Squire este un editor de text extrem de ușor HTML5, cel mai potrivit pentru formele de intrare bogate ale aplicațiilor dvs. și pentru crearea simplă a documentelor. Oferă suport pentru browser încrucișat, dar evită în mod deliberat complexitatea de a sprijini browserele mai vechi. Funcționează cel mai bine începând cu Opera 10, Firefox 3.5, Safari 4, Chrome 9 și IE8.

Squire nu este destinat creării și editării paginilor Web WYSIWYG. Cu toate acestea, pentru multe utilizări bogate de text și aplicații web, Squire poate fi exact ceea ce aveți nevoie. Oferă puterea fără balonare. De asemenea, MIT este licențiată pentru reutilizarea flexibilă.

În acest tutorial, vă vom arăta cum să descărcați Squire și să construiți formularele de intrări de eșantioane cu ea. Dacă doriți să vedeți Squire în acțiune, vizitați demo-ul.

De unde a venit Squire?

Echipa FastMail a construit Squire pentru a simplifica cerințele editorului webmail. FastMail este o excelentă alternativă de e-mail pe bază de cloud pentru Gmail - sunt utilizator FastMail zilnic. Deoarece se bazează în Australia și operează în temeiul unor legi diferite decât în ​​S.U.A., există o protecție a confidențialității ușor îmbunătățită pentru utilizatorii FastMail. Puteți citi mai multe despre acest lucru aici: FastMail spune că este liber de supravegherea NSA.

Pe măsură ce echipa FastMail a scris pe blogul lor, au folosit anterior CKeditor:

Deși nu este o alegere proastă, la fel ca majoritatea editorilor de acolo, a fost proiectat pentru crearea de site-uri web, fără a scrie e-mailuri. Ca atare, inserarea pur și simplu a unei imagini în mod implicit a prezentat un dialog cu trei tab-uri și mai multe opțiuni decât ați putea crede posibil ... A venit, de asemenea, cu propriul toolkit UI și cadru, pe care ar fi trebuit să-l personalizăm puternic pentru a se potrivi cu restul noul interfață utilizată pe care o construim; o durere de întreținut.
Cu accentul pus pe viteză și performanță, am fost, de asemenea, îngrijorați de dimensiunea codului. Versiunea CKEditor pe care o folosim pentru UI-ul nostru precedent (clasic), care include numai pluginurile de care avem nevoie, este o descărcare de 159 KB (când este gzipată, necomprimată este de 441 KB). Acesta este doar codul, excluzând stilurile și imaginile.

Ei au decis să înceapă de la zero și să construiască Squire. La doar 11,5 KB de JavaScript după minificare și gzip (34,7 KB necomprimat) și fără dependențe, Squire este extrem de ușor. 

Rezultatele sunt impresionante. Greutatea combinată necesară pentru încărcarea întregului ecran de compoziție, a bibliotecii de bază, a codului de e-mail și a contactelor și a întregului cod UI pentru a reda întregul ecran ajunge acum doar la 149,4 KB (459,7 KB necomprimat) - fără CKEditor singur.

Squire nu are dependențe. Nu există nici un XHR wrapper, bibliotecă widget sau suprapuneri cu lightbox. Nu există o interfață de utilizator pentru o bară de instrumente, care elimină umflătura de a avea două seturi de instrumente UI încărcate. Este simplu

Dar pe încărcătură, JQuery $ (Document) .ready funcția înlocuiește funcția statică #foo textarea cu ei SquireUI.

  

Configurația barei de instrumente este implementată cu o configurație destul de complexă a JQuery, AJAX, HTML5 și CSS. Se încarcă această pagină HTML pentru a afișa cea mai mare parte a barei de instrumente: http://neilj.github.io/Squire/build/Squire-UI.html.

$ (div) .load (options.buildPath + 'Squire-UI.html', funcția () this.linkDrop = new Drop (target: $ (' $ ('# drop-link'). html (), pozitia: 'bottom center', openOn: 'click');

Iată o submulțime a codului sursă pentru Squire-UI.html pentru a vedea ce se încarcă:

...

S-ar putea să fi fost bine dacă ar fi oferit o bara de instrumente Bootstrap simplificată în codul de distribuție ca un add-on, dar cu siguranță puteți învăța din ceea ce au făcut în demo-ul lor de mai sus.

Sper că veți găsi Squire util pentru propriile aplicații. Nu ezitați să postați corecturi, întrebări sau comentarii de mai jos. Puteți să mă contactați și pe Twitter @reifman sau să mă trimiteți direct prin e-mail.

Link-uri conexe

Cod