Google决定让指针事件(Pointer Events)成为Chrome的主要事件类型,抛弃苹果,加入微软和Firefox的阵营。 去年,Chrome和Blink输入团队负责人Rick Byers曾宣称Blink/Chrome不会实现指针事件(PE),尽管Google很久之前就已加入相关工作组。Byers提到了一系列原因,包括Apple对于PE的反对会影响它的普及程度、给标准16ms帧预算带来大约2%的性能损耗以及在滚动时无法处理事件。Google甚至把他们的PE polyfill库托管给jQuery基金会。 但是“持续收到的反馈表示,web开发者、框架作者和其他浏览器开发商认为指针事件对于平台来说具有很大价值”,Byers最近宣布Chrome将实现PE,可以通过某个标记开启。Chromium官网的一个新issue显示,PE相关的工作已经开始。此外,Byers和微软的PE团队已经就上文提到的性能问题进行讨论,这将涉及到一些API的改动。 我们就此事进一步的发展采访了Byers。 InfoQ:请问你准备如何处理同时支持两种事件类型的设备?是否会像这个文档中建议的那样把所有的TE(触摸事件)都转换成PE?
InfoQ:微软的Jacob Rossi表示他愿意协助你修复PE中可能存在的问题,但是在W3C中PE的规范已经成为了最终标准,据我所知现在只能对其进行细微的调整。你准备怎么做?
InfoQ:请解释一下为什么“默认不捕获的触摸输入模型会影响引擎性能”?
Google计划在所有支持平台的Chrome中实现PE,包括Android和WebView。PE也会在Spartan/IE10、Firefox(需要通过flag开启)、jQuery和Dojo中实现。Apple是目前唯一一家反对PE的主流浏览器开发商。 查看英文原文:Google Is Going to Make Pointer Events the Main Event Type in Chrome after All |