写点什么

Mozilla Brick:一个 Web 组件 Polyfill 库

  • 2013-08-30
  • 本文字数:875 字

    阅读完需:约 3 分钟

Web 组件是一个 W3C 规范,它旨在使 Web 开发人员能够定义具有非常丰富的视觉效果和高可交互性且易于组合的小组件。 Brick 库提供了新的自定义 HTML 标签,从而抽象了用户常用接口模式。在浏览器本身支持类似标签之前,开发人员可以使用 Brick。

Brick 基于 Mozilla 的 X-Tag polyfill 库,因此,要运行依赖任何 Brick 标签的代码,开发人员需要先将 window.onload 替换为 x-tags 库的“DOMComponentsLoaded”事件:

复制代码
document.addEventListener('DOMComponentsLoaded', function(){  
// 在这里添加可运行代码...
});

在写作本文的时候,Brick 包含 13 个不同的标签(“bricks”),它们中的大部分都完全相互独立,甚至可以分别下载,而不是一起打包下载:

  1. “导航栏(Appbar)”
  2. “日历(Calendar)”
  3. “日期选择器(Datepicker)”
  4. “面板(Deck)”
  5. “翻转框(Flipbox)”
  6. “图标按钮(Iconbutton)”
  7. “布局(Layout)”
  8. “滚动框(Slidebox)”
  9. “滚动条(Slider)”
  10. “选项卡(Tabbar)”
  11. “开关(Toggle)”
  12. “开关组(Togglegroup)”
  13. “提示框(Tooltip)”

下面是日历标签的样子:

复制代码
<x-calendar></x-calendar>

Google 非常信任 Web 组件,它也正在开发一个名为 Polymer 的 Web 组件 polyfill 库,该库试图在现有的浏览器基本结构上充分利用“影子 DOM(Shadow DOM)”、“自定义元素(Custom Elements)”和“模型驱动视图(Model Driven Vies)”等未来技术。

值得一提的是,虽然在过去的一年里 Web 组件的发展势头看上去很好,但是 Web 组件规范变化很快,还有许多方面不确定。几周前,来自 Google 的 Dimitri Glazkov 在 W3C 邮件列表中提议,从规范中删除元素。关于这一点,他们一致认为, 已拟定的元素语法不够好,在实现标准化之前,应该把这个问题留给各实现库来探索,正如来自 Apollo Group 的 Brian Kardell 所说:

像 x-tags 和 polymer 这样的项目,甚至是像 Ember 和 Angular 这样的项目,要给他们机会,让他们带头提出那些问题并帮忙给出具有潜在竞争力的答案——在我看来,没有必要急于在这一点上进行高层次的标准化。

查看英文原文: Mozilla Brick: A Polyfill Library for Web Components

2013-08-30 03:072019
用户头像

发布了 256 篇内容, 共 88.9 次阅读, 收获喜欢 12 次。

关注

评论

发布
暂无评论
发现更多内容

Eudic 欧路词典:多语种翻译神器,精准释义与例句一应俱全

Rose

鸿蒙 Next 中 Text 组件用法总结

flfljh

2024-11-27:字符串的分数。用go语言,给定一个字符串 s,我们可以定义其“分数”为相邻字符的 ASCII 码差值绝对值的总和。 请计算并返回字符串 s 的分数。 输入:s = “hello“

福大大架构师每日一题

福大大架构师每日一题

2024华为云开源开发者论坛项目抢鲜看|Kmesh: 监控指标和访问日志功能详解

华为云原生团队

云计算 开源 容器 云原生

支付 APP 的测试管理实践与思考

优测云服务平台

持续测试 测试管理工具 测试用例管理平台 质量门禁

GoodNotes 5 - 笔记、绘图、文档管理一站式搞定

Rose

One Switch for Mac(菜单栏一键开关控制神器)v1.33.1中文版

Rose

牛客网最新互联网一线大厂Java 面试题附答案汇总

采菊东篱下

程序员 java面试

AIGC系统中多个模型的切换调用方案探索

京东科技开发者

axure rp8中文安装包 附axure rp永久密钥

Rose

告别 Kafka,拥抱 Databend:构建高效低成本的用户行为分析体系

Databend

西双版纳有等保测评机构吗?在哪里?

行云管家

等保 等保测评

disk drill mac 破解版 附disk drill 激活码 好用的苹果数据恢复软件

Rose

鸿蒙 next 封装日志工具类 LogUtil

flfljh

2024最新1211道 Java面试题及答案整理(建议收藏)

架构师之道

程序员 java面试

mac免费的投屏软件duet,帮助用户把mac的屏幕分享到移动设备的应用

Rose

鸿蒙Flutter 常见问题总结

flfljh

印象笔记发布全新知识管理平台 AI让你的第二个大脑持续升级

E科讯

好用的交互式动画界面设计神器 Principle for Mac汉化版

Rose

Pixelmator Pro for Mac 非常强大、美观且易于使用的图像编辑器

Rose

3D渲染和动画制作软件 KeyShot破解版 附永久许可证及安装教程

Rose

TinyEngine低代码引擎2.0新特性介绍

OpenTiny社区

低代码 OpenTiny TinyEngine 前端开源

harmony_flutter 自定义toast

flfljh

HarmonyOS harmony

揭秘淘宝天猫API接口:轻松获取商品详情与优惠券券后价

代码忍者

API 接口 pinduoduo API

Taro 鸿蒙技术内幕系列(三) - 多语言场景下的通用事件系统设计

京东科技开发者

新产品研发管理的需求来自哪些维度

易成研发中心

需求管理

苹果mac流行的API开发工具:Postman

Rose

安能物流 All in TiDB 背后的故事与成果

PingCAP

数据库 TiDB

简单聊聊过等保的五大益处

行云管家

等保 等保测评 过等保

需求管理的主要内容包括哪些

易成研发中心

需求管理 需求管理工具

轻松搞定平稳运行,数据库平台 DBStack 帮助 DBA 运维不同基础设施上的各类数据库

Baidu AICLOUD

数据库

Mozilla Brick:一个Web组件Polyfill库_JavaScript_Dio Synodinos_InfoQ精选文章