天天看点

Chrome 54 终结 YouTube 的 Flash 内嵌技术

谷歌已经启动了chrome 54项目。最新发布的版本进一步地边缘化flash,转而使用html5在浏览器里内嵌youtube视频,同时包含了大量问题修复和功能改进。

谷歌移除flash的工作已经进行了一段时间,发布的多个更新强化了用户和开发者对html5的使用体验。

youtube从2015年1月份开始使用html5作为默认的视频内嵌技术,谷歌在去年改变了chromium处理网站flash的方式。

从chrome 45开始,浏览器在运行最重要的内容并暂停其它flash内容之前会先检测网页中是否包含了flash内容。

chrome 54稳定版重写了youtube内嵌flash的方式,当检测到有内嵌的flash youtube视频,浏览器会自动使用html5替代它。谷歌表示这个变化是“为了减少flash在chrome中的使用”。

chrome 54还带来了custom elements规范的v1版本。

在custom elements v1:可重用web组件这篇博文里,谷歌工程师eric bidelman说,通过使用自定义元素,“web开发者可以创建新的html标签,弥补已有标签的不足,也可以对其他开发者开发的组件进行扩展”。另外,跟v0版本不一样的是,v1版本的api在设计上有很大不同。

关于如何遵循v1规范为一个元素定义javascript api,bidelman说:

自定义元素的功能是通过es2015类来定义的,es2015扩展了htmlelement。扩展htmlelement可以保证自定义元素会继承整个dom api,也就是说,为这个类添加的任何一个属性/方法都会成为自定义元素dom接口的一部分。本质上,就是使用这个类为你的标签创建javascript api。

bidelman举了appdrawer这个例子来说明如何定义dom接口,其中类的属性被映射成html属性:

customelements.define('app-drawer', appdrawer);

关于更多自定义元素的信息,包括自定义元素的扩展和重构,请参看这里。

chrome 54还包括了大量安全方面的问题修复。尽管谷歌没有透露太多关于这些问题的细节,richard bustamante在稳定通道更新里还是列出了总共21个安全问题修复,包括6个“高”安全级别问题。其中一个是url欺骗漏洞相关问题,有一个是全局xss问题(cve-2016-5181),还有一个blink引擎的堆溢出问题(cve-2016-5182)。谷歌的pdf软件包pdfium有三个高级别的问题修复。

从谷歌公布的chrome 54已移除和不再推荐使用的api列表来看,最新版本的chrome不允许跨域访问window.onunload事件处理器,为的是让chrome和html规范保持一致。http/0.9不再被推荐使用(开发者应该转向http/2),inittouchevent被移除。

chrome 55计划在今年11月发布。

继续阅读