jsFiddle really doesn't like loading Bing in the first place, so there
were yet more variables here.

In  any  case,  the direct cause of the problem is that Bing's Mozilla
compat  layer  implements Element.prototype.currentStyle.  This screws
up  Moo's  getComputedStyle,  which  detects  what it thinks is the IE
native  .currentStyle  and  acts accordingly.  Essentially, you end up
using two frameworks, and you know how that goes…

Quick  fix:  reimplement  getComputedStyle  on  Gecko to eliminate the
conditional.

if (Browser.Engine.gecko) {
    Element.prototype.getComputedStyle = function(property){
         //if (this.currentStyle) return 
this.currentStyle[property.camelCase()];
         var computed = this.getDocument().defaultView.getComputedStyle(this, 
null);
        return (computed) ? computed.getPropertyValue([property.hyphenate()]) : 
null;
    }
}

Of  course,  this  is based on the Moo 1.2.5 getComputedStyle with the
critical  line commented out.  As/if this function changes in Moo, you
will have to maintain your fork.  Have fun!

-- S.




Reply via email to