重温 Squire:高效的 HTML5 富文本编辑器

重温 Squire:高效的 HTML5 富文本编辑器插图下载群

什么是 Squire?

Squire 是一款极其轻量级的 HTML5 富文本编辑器,最适合您应用程序的丰富输入表单和简单的文档创建。它提供跨浏览器支持,但刻意避免支持旧版浏览器的复杂性。它在 Opera 10、Firefox 3.5、Safari 4、Chrome 9 和 IE8 上运行效果最佳。

Squire 不适用于创建和编辑所见即所得的网站页面。然而,对于许多富文本输入和网络应用程序来说,Squire 可能正是您所需要的。它提供了不臃肿的力量。它还获得了麻省理工学院的许可,可以灵活重用。

在本教程中,我将向您展示如何下载 Squire 并使用它构建示例输入表单。如果您想了解 Squire 的实际应用,请访问演示。

乡绅从哪里来?

FastMail 团队构建了 Squire 来简化他们的网络邮件编辑器要求。 FastMail 是 Gmail 的优秀基于云的电子邮件替代方案 — 我是 FastMail 的日常用户。由于它的总部位于澳大利亚,并且根据与美国不同的法律运营,因此 FastMail 用户的隐私保护略有改善。您可以在这里阅读更多相关信息:FastMail 称其不受 NSA 监视。

正如 FastMail 团队在他们的博客中所写,他们之前使用过 CKeditor:

虽然不是一个糟糕的选择,但像大多数其他编辑器一样,它是为创建网站而不是编写电子邮件而设计的。因此,默认情况下,简单地插入图像就会出现一个包含三个选项卡和比您想象的更多选项的对话框…它还附带了自己的 UI 工具包和框架,我们必须对其进行大量自定义才能适应我们正在构建的新用户界面的其余部分;维护起来很痛苦。
由于我们关注速度和性能,我们也关心代码大小。我们用于之前(经典)UI 的 CKEditor 版本仅包含我们需要的插件,下载大小为 159 KB(gzip 压缩后;未压缩为 441 KB)。这只是代码,不包括样式和图像。

他们决定从头开始,打造 Squire。压缩和 gzip 后的 JavaScript 大小仅为 11.5 KB(未压缩时为 34.7 KB),并且没有依赖项,Squire 非常轻量级。

结果令人印象深刻。加载整个撰写屏幕、基础库、邮件和联系人模型代码以及呈现整个屏幕的所有 UI 代码所需的组合代码重量现在仅为 149.4 KB(未压缩时为 459.7 KB),比单独的 CKEditor 还小。

Squire 没有依赖性。没有 XHR 包装器、小部件库或灯箱覆盖层。工具栏没有用户界面,这消除了加载两个 UI 工具包带来的臃肿。这只是一个简单的

登录后复制

但在加载时,其 JQuery $(document).ready 函数将静态 #foo 文本区域替换为其 SquireUI

    
    $(document).ready(function () {
      UI = new SquireUI({replace: \'textarea#foo\', height: 300});
    });
    

登录后复制

工具栏配置是通过相当复杂的 JQuery、AJAX、HTML5 和 CSS 配置来实现的。它正在加载此 HTML 页面以显示大部分工具栏:http://neilj.github.io/Squire/build/Squire-UI.html。

$(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 工具栏作为附加组件,那就太好了,但您当然可以从他们在上面自己的演示中所做的事情中学习。

我希望您发现 Squire 对您自己的应用程序很有用。请随时在下面发表更正、问题或评论。您还可以通过 Twitter @reifman 联系我或直接向我发送电子邮件。

相关链接

Squire:FastMail 的富文本编辑器
Squire演示页面
Github 上的 Squire 代码库

本文来源于 网络,由本站搜集发布,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系本站核实处理。如需转载,请注明文章来源。

© 版权声明
THE END
喜欢就支持一下吧
点赞23 分享