On Mon, 2012-01-30 at 09:41 +0000, lkcl luke wrote:
> we kinda threw stuff in to see what worked. at one point, the use of
> x['abcd'] instead of x.abcd was added - this unfortunately has a
> rather large performance hit on IE's trident engine, so at some point
> should go back perhaps to x.$abcd.
The use of x['abcd'] needs less attribute mapping that x.abcd (esp. in
IE if I remember correctly). I think it was also introduced before we
implemented the attribute mapping. And there's a second thing (I think):
the google code compressor doesn't mess with strings, but does shorten
attribute names.
But the major problem with x.$abcd (note the $) is:
DOM.py:
...
def getOffsetHeight(elem):
return elem.offsetHeight
...
this (c/w)ould be translated to:
function $getOffsetHeight($elem) {
return $elem.$offsetHeight;
}
and the problem is $offsetHeight.
In this specific case it should be $elem.offsetHeight. I won't say it's
impossible, but it would cause some headaches an probably some speed.