when live dies and start stops - Opera's problems with the new MS site framework
Monday, 7. November 2005, 23:25:25
The sites are based on the same set of JavaScript libraries. One of these files is meant to be a "compatibility layer" for non-IE browsers. It basically "emulates" Internet Explorer JScript features so that the rest of the libraries can use such features without worrying about sniffing or browser compatibility.
To emulate JScript in such detail the authors have stated that they need certain browser functionality. They use a Mozilla extension to the ECMAScript standard, the ability to define "getters" and "setters" for object properties. Opera does not support this functionality (mainly because it is non-standard - not in the ECMA specifications - and not widely used.)
On the other hand, Opera has worked hard on being compatible with many of IE's extensions.
The irony! Microsoft's script library basically tells Opera "sorry, but you've spent all those years implementing the wrong standards violations! If you had copied Mozilla's violations rather than IE's we might make live.com and start.com work for you"..
As an aside: if you who are reading this are a FireFox-lover and standards advocate, go ask the mozilla.org crew some serious questions about why it is considered OK to embrace-and-extend ECMAScript. Isn't this a standards violation by another name? Getters and setters are worse than FONT or document.all - there isn't even a backward-compatibility story here. One single getter or setter definition in an object literal and the whole JavaScript library is unusable in other browsers. And you claim you're writing a standards-compliant browser??








larskl # 8. November 2005, 12:36
danigoldman # 9. November 2005, 20:10
hallvors # 10. November 2005, 10:30
Daniel Goldman: we do support the standard approach of HTMLElement.prototype.something=whatever;, which is to the best of my knowledge one form of "adding custom properties to base DOM objects".
Maian # 17. November 2005, 10:00
Fanon # 18. April 2006, 21:38
hallvors # 20. April 2006, 08:54