The Internet is a beautiful thing, it allows for vast sums of information to be proliferated around the world in seconds and to help consumers absorb this information, web browsers play a critical role in this process. To help align browsers to display this information and to make sure all users see and interact with the same content, web standards are created to make the lives of developers easier.
On February 24th, the W3C, a standards body for the World Wide Web, announced that Pointer Events specification has become a recommendation for modern web browsers. The good news is that typically, when a standard is released, developers can expect all browsers to support the feature and begin using the technology. Unfortunately, that is not always the case and this time around, Google and Apple are slowing the adoption of this standard.
So what is this new standard and why is it important? Right now, most HTML5 content is designed for mouse input but we all know that touch and even stylus/pen input is a growing segment for browsing the web. Up until now, handling of these non-mouse inputs have been done individually which often creates unnecessary duplication of logic and event handling overhead when adding new types of input. Thus, Pointer Events was born and it was Microsoft's submission to the W3C that got approved.
As it stands right now, there are no indications that Apple is going to support Pointer Events and Google is kind-of-but-not-really supporting Pointer Events by expanding the use of Touch Events to incorporate Pointer Events. Google originally said they would support the standard but when they broke off with Blink, they went to the hybrid Touch Events-Pointer Events.
The Touch Events Community Group, which is behind the support for adding Pointer Events to Touch Events, has shown promise but there are a lot of concerns about this mashup of features. Things such as supporting hovering will create awkward scenarios because of the logic inside of Touch Events whereas with Pointer Events, the process is straightforward and easier to implement for developers.
Google has stated that they are willing to reevaluate Pointer Events but that means that they are still pushing forward with their current implementation instead of using this new standard. And then there is Apple, which may adopt Google's method of non-mouse inputs instead of this new standard, which leaves developers in a tough spot.
Right now, Internet Explorer 11 has support for Pointer Events and Firefox is not far behind in offering native support. Chrome and Safari do not support the standard, and with Apple's dominance of the mobile web with Webkit, they have significant control over whether of not this standard will be utilized by the community. And Google, which has a large presence in the desktop space too, is not committing to Pointer Events either, which means that two technologies are being driven forward even though one is not considered to be a published standard. What we have are several titans on each side of a battlefield staring at each other to see who will blink first.
Apple's stubbornness is reminiscent of what Microsoft did with IE6 and ignored the standards in favor of its own agenda. Google finds itself playing host to Apple's mentality with its push forward for Touch Events, and then we have Microsoft and Mozilla following web standards; and left out in the back to fend for themselves are developers who only want an easier way to code for the modern web.
Only time will tell who eventually wins but if standards no longer carry any weight with those who create browsers, consumers should be concerned as it will impact web interoperability - a massive step backwards in the progression of disseminating content ubiquitously across browsers.