写点什么

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:072055
用户头像

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

关注

评论

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

12 高可用的应用,微众银行java面试

Java 程序员 后端

13万字!腾讯高工手写JDK源码笔记 带你飙向实战,linux高级教程

Java 程序员 后端

长隆熊猫酒店联合番禺消防大队开展“我是小小消防员”活动

江湖老铁

浪潮云说丨GPU云服务器,助力AI计划轻松实现

云计算

Python代码阅读(第55篇):获取字典的所有键或所有值的列表

Felix

Python 编程 阅读代码 字典 Python初学者

腾讯大数据全场景在离线混部系统Caelus正式开源

科技热闻

git submodule 添加/删除

webrtc developer

京东三面(后端)凭借这份Java面试复盘手册,已斩获60K*15offer

Java spring 程序员 算法 JVM

Nocalhost 亮相 CD Foundation 国内首届 Meetup,Keith Chan 将出席致辞

CODING DevOps

Linux Nocalhost Meetup CDF

OceanBase 创始人阳振坤 | 十余年打磨 国产数据库之路砥砺前行

OceanBase 数据库

数据库 开发者 趋势 1024 CSDN

SAP x EMQ 碳中和方案亮相进博会,数据基础设施支撑低碳发展

EMQ映云科技

物联网 IoT mqtt 进博会 SAP

加速拥抱支持开源生态 | OceanBase 开源版3.1.1正式发布

OceanBase 数据库

数据库 开源 开发者 成绩单 DTCC

CVE-2017-10271漏洞复现与分析

喀拉峻

网络安全 信息安全 渗透测试

腾讯架构师推荐架构电子书:多线程+JVM+Nginx+Redis+SpringBoot

nginx redis 程序员 Spring Boot JVM

去年今日我凭借这份文档,摇身一变成了被BAT大牛们看中的幸运儿

Java spring 程序员 JVM Kakfa

融合通信技术趋势和演进方向

网易云信

云通信 通信云 传输协议

个人项目管理软件解决方案

低代码小观

项目管理 管理系统 企业管理系统 项目管理工具 企业管理工具

出自清华大牛之手的Redis源码核心手册,已被列为GitHub首推书籍

Java redis 编程 程序员

周傲英:替代工程只是契机,转型升级才是大势所驱

OceanBase 数据库

数据库 开源 数字化转型 云栖大会

13 高可用的服务,字节跳动今日学习内容

Java 程序员 后端

新赛季集结!“百度AI创意派”正在寻找有创意的你

科技热闻

解决大数据分布式计算痛点:腾讯正式开源分布式远程Shuffle服务Firestorm

科技热闻

杨传辉:深挖 OceanBase 背后的技术逻辑,助力数据库核心系统升级

OceanBase 数据库

数据库 开源 分布式 数字化转型 核心系统

如果明天交任务,自己做今晚能完成,而让下属做需要一周时间,怎么办?

石云升

职场经验 11月日更

杨冰:OceanBase助力数字化转型,原生分布式数据库成核心系统首选

OceanBase 数据库

数据库 开源 分布式 云栖大会 核心系统

OpenMLDB v0.3.0 正式发布,支持快速部署使用的单机模式

第四范式开发者社区

开源 第四范式 OpenMLDB

OceanBase 3.2 正式发布 | 更硬核的 HTAP,TPC-H 性能提升6倍!

OceanBase 数据库

数据库 分布式 云栖大会 核心系统 一体化架构

互联网+质量基础设施服务平台,NQI一站式服务平台搭建

电微13828808271

“你好,天津”网络短视频大赛月内启动

InfoQ 天津

共筑数据库未来 | 2021 OceanBase 原生分布式数据库论坛回顾

OceanBase 数据库

开源 分布式 #数据库 云栖大会 圆桌论坛

开源项目|Go 开发的一款分布式唯一 ID 生成系统

AlwaysBeta

golang 开源 Go 语言

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