IE8 and box-sizing

One of my top feature request for IE8 was for it to support box-sizing. I’m happy to see that IE8 does support box-sizing although it has a annoying quirk. The DOM property name is not correct. The rule for translating CSS property names to DOM property names is to replace a dash followed by a ...

The Good, the Bad and the Ugly

The Good Attribute handling in the DOM is finally working. MS said that this was one of the hardest things to fix and yet they did it. hashchange events simplify history management. I wish they implemented more of the HTML5 proposals when it comes to history state management but getting an event when the hash ...

JScript 5.7

[Revised to not sound as nagging as I always sound] The JScript 5.7 patch is now being pushed to an IE6 computer near you… IE6 uses Jscript 5.6 which has some design flaws when it comes to garbage collection. This is just a small issue for small applications but it is a large issue for ...

Computed vs Cascaded Style

Most JS frameworks and libraries I’ve seen have a function similar to this: function getStyle(el, prop) { if (document.defaultView && document.defaultView.getComputedStyle) { return document.defaultView.getComputedStyle(el, null)[prop]; } else if (el.currentStyle) { return el.currentStyle[prop]; } else { return el.style[prop]; } } So what is wrong with this you might ask? Lets add some background and then we ...

New Explorer Canvas Release

We finally got our act together and squashed some long standing bugs. This is the first bug fix release since we initially release ExCanvas over a year ago. Support for sub pixel rendering Crop content if painting outside the canvas initElement now returns a reference to the fixed element Fixes to arc Printing support Implement ...

IE Background Cache Fix

A while back a lot of people where covering how to work around the bug that IE always reloads background images from the server, leading to your UI flickering. Dean wrote one and lots of others wrote the same thing. Today, I saw this simple workaround (from a fellow Googler who worked at Microsoft before): ...

appendChild is not a Function

Another day another rant. Now it is time for me ranting how bad IE DOM/COM objects and ActiveX objects integrate with JScript. Given: var f = document.body.appendChild; f.call(document.body, document.createTextNode('Huh?')); This throws an exception because DOM/COM methods are not really instance of Function. Why is this an issue you might ask? Assume we have an ActiveX ...

IE 7 DOM and JS Changelog

Here are the DOM and JavaScript changes in the latest version of Internet Explorer 7, as well as the planned ones for the final release, since Internet Explorer 6.0 which was released in 2001: Begin Changelist ----------------- ----------------- End of Changes

6 Months at Google

Maybe my little April fools joke was a bit too obvious. Me leaving Google for Microsoft? That would never happen. I don’t think anyone ever left Google for Microsoft and there is a reason why. Google is just awesome. At Google I got to work with the smartest people and they have all of the ...

ExplorerCanvas

Over the last few months, me, Glen and Emil have been working on an open source version of canvas for Internet Explorer. The implementation uses VML and IE style filters (for image rotation, rgba and globalAlpha). It implements most of the specification but some areas are a not implemented (for example composite drawing, patterns, radial ...