Squire 是一款極其輕量級的 HTML5 富文本編輯器,最適合您應用程序的豐富輸入表單和簡單的文檔創建。愛掏網 - it200.com它提供跨瀏覽器支持,但刻意避免支持舊版瀏覽器的復雜性。愛掏網 - it200.com它在 Opera 10、Firefox 3.5、Safari 4、Chrome 9 和 IE8 上運行效果最佳。愛掏網 - it200.com
Squire 不適用于創建和編輯所見即所得的網站頁面。愛掏網 - it200.com然而,對于許多富文本輸入和網絡應用程序來說,Squire 可能正是您所需要的。愛掏網 - it200.com它提供了不臃腫的力量。愛掏網 - it200.com它還獲得了麻省理工學院的許可,可以靈活重用。愛掏網 - it200.com
在本教程中,我將向您展示如何下載 Squire 并使用它構建示例輸入表單。愛掏網 - it200.com如果您想了解 Squire 的實際應用,請訪問演示。愛掏網 - it200.com
FastMail 團隊構建了 Squire 來簡化他們的網絡郵件編輯器要求。愛掏網 - it200.com FastMail 是 Gmail 的優秀基于云的電子郵件替代方案 — 我是 FastMail 的日常用戶。愛掏網 - it200.com由于它的總部位于澳大利亞,并且根據與美國不同的法律運營,因此 FastMail 用戶的隱私保護略有改善。愛掏網 - it200.com您可以在這里閱讀更多相關信息:FastMail 稱其不受 NSA 監視。愛掏網 - it200.com
正如 FastMail 團隊在他們的博客中所寫,他們之前使用過 CKeditor:
雖然不是一個糟糕的選擇,但像大多數其他編輯器一樣,它是為創建網站而不是編寫電子郵件而設計的。愛掏網 - it200.com因此,默認情況下,簡單地插入圖像就會出現一個包含三個選項卡和比您想象的更多選項的對話框...它還附帶了自己的 UI 工具包和框架,我們必須對其進行大量自定義才能適應我們正在構建的新用戶界面的其余部分;維護起來很痛苦。愛掏網 - it200.com
由于我們關注速度和性能,我們也關心代碼大小。愛掏網 - it200.com我們用于之前(經典)UI 的 CKEditor 版本僅包含我們需要的插件,下載大小為 159 KB(gzip 壓縮后;未壓縮為 441 KB)。愛掏網 - it200.com這只是代碼,不包括樣式和圖像。愛掏網 - it200.com
他們決定從頭開始,打造 Squire。愛掏網 - it200.com壓縮和 gzip 后的 JavaScript 大小僅為 11.5 KB(未壓縮時為 34.7 KB),并且沒有依賴項,Squire 非常輕量級。愛掏網 - it200.com
結果令人印象深刻。愛掏網 - it200.com加載整個撰寫屏幕、基礎庫、郵件和聯系人模型代碼以及呈現整個屏幕的所有 UI 代碼所需的組合代碼重量現在僅為 149.4 KB(未壓縮時為 459.7 KB),比單獨的 CKEditor 還小。愛掏網 - it200.com
Squire 沒有依賴性。愛掏網 - it200.com沒有 XHR 包裝器、小部件庫或燈箱覆蓋層。愛掏網 - it200.com工具欄沒有用戶界面,這消除了加載兩個 UI 工具包帶來的臃腫。愛掏網 - it200.com這只是一個簡單的 4750256ae76b6b9d804861d8f69e79d3
組件,可以通過 JavaScript 進行操作。愛掏網 - it200.com
Squire 使用選擇和范圍 API 來操作 DOM。愛掏網 - it200.com這消除了常見的跨瀏覽器不兼容性。愛掏網 - it200.com再次來自 FastMail 博客:
制作富文本編輯器是出了名的困難,因為不同的瀏覽器在這方面極其不一致。愛掏網 - it200.com這些 API 都是 Microsoft 在 IE 全盛時期引入的,然后被其他供應商以各種不兼容的方式復制......大多數富文本編輯器執行命令,然后嘗試清理瀏覽器創建的混亂。愛掏網 - it200.com有了 Squire,我們就巧妙地繞過了這個問題。愛掏網 - it200.com
Squire 的總體理念是允許瀏覽器做盡可能多的事情(不幸的是不是很多),但在任何偏離要求的地方進行控制,或者存在顯著的跨瀏覽器差異。愛掏網 - it200.com
安裝 Squire其次,將
build/
目錄的內容復制到您的應用程序中。愛掏網 - it200.com p>第三,編輯
document.html
中的c9ccee2e6ea535a969eb3f532ad9fe89
塊以添加您希望編輯器使用的默認樣式(或鏈接到外部樣式表)。愛掏網 - it200.com讓我們看一下 Squire 附帶的演示應用程序。愛掏網 - it200.com使用 Squire 時,您可以使用
99d78fe265c29dea40d4f5b20d97044c
,而不是4750256ae76b6b9d804861d8f69e79d3
元素。愛掏網 - it200.com在演示中:
登錄后復制
Document.html
是一個具有默認樣式的空白畫布,它會加載 Squire:登錄后復制使用 Squire 時,您可以將事件偵聽器附加到 iframe 的加載事件。愛掏網 - it200.com當此事件觸發時,您可以通過 iframe.contentWindow.editor 獲取對編輯器對象的引用。愛掏網 - it200.com例如,演示 iframe 包括:
onload="top.editor=this.contentWindow.editor"
該演示有兩種類型的鏈接,用于在 Squire 中操作內容。愛掏網 - it200.com可以對任何選定文本進行操作的簡單命令如下所示:
Bold
需要額外用戶輸入的復雜命令如下所示;他們添加了提示符 c:
字體大小
演示應用程序如下所示:
演示頁面頂部的 JavaScript 偵聽對這些 span 命令的任何點擊。愛掏網 - it200.com如果提示類存在,它會從用戶收集更多信息:
登錄后復制然后,它使用命令和任何用戶提供的值調用 Squire 編輯器。愛掏網 - it200.com然后,Squire 將命令應用于當前選定的文本:
編輯器[ id ]( value );
您可以了解有關 Squire 的更多信息,并在自述文件中查看其完整的 API 文檔。愛掏網 - it200.com
作為示例,讓我們添加兩個讀取 Squire 編輯器狀態的命令。愛掏網 - it200.com我們將在演示命令標題的底部添加兩個鏈接:
登錄后復制get selection | get doc
當您選擇某些文本并單擊它時,所選內容將在警報中彈出,如下所示。愛掏網 - it200.com
讓我們來看看更美觀的演示及其工具欄:
此頁面的頭塊集成了 Bootstrap 的樣式表和名為
Squire-UI
的樣式表。愛掏網 - it200.com它還為此Squire-UI
提供 JavaScript。愛掏網 - it200.comSquire It also offers static html for a textarea in the body 登錄后復制但在加載時,其 JQuery
$(document).ready
函數將靜態#foo
文本區域替換為其SquireUI
。愛掏網 - it200.com登錄后復制工具欄配置是通過相當復雜的 JQuery、AJAX、HTML5 和 CSS 配置來實現的。愛掏網 - it200.com它正在加載此 HTML 頁面以顯示大部分工具欄:http://neilj.github.io/Squire/build/Squire-UI.html。愛掏網 - it200.com
$(div).load(options.buildPath + 'Squire-UI.html', function() { this.linkDrop = new Drop({ target: $('#makeLink').first()[0], content: $('#drop-link').html(), position: 'bottom center', openOn: 'click' });登錄后復制以下是 Squire-UI.html 源代碼的子集,以便您可以查看正在加載的內容:
... 登錄后復制如果他們在分發代碼中提供簡化的 Bootstrap 工具欄作為附加組件,那就太好了,但您當然可以從他們在上面自己的演示中所做的事情中學習。愛掏網 - it200.com
我希望您發現 Squire 對您自己的應用程序很有用。愛掏網 - it200.com請隨時在下面發表更正、問題或評論。愛掏網 - it200.com您還可以通過 Twitter @reifman 聯系我或直接向我發送電子郵件。愛掏網 - it200.com
- Squire:FastMail 的富文本編輯器
- Squire演示頁面
- Github 上的 Squire 代碼庫
以上就是重溫 Squire:高效的 HTML5 富文本編輯器的詳細內容,更多請關注愛掏網 - it200.com其它相關文章!
分享到:
- 上一篇:從 WordPress 網站提取帖子的指南
- 下一篇:創建 WordPress 登陸頁面:分步指南