Hi,

It appears that owner.el.getStyle('zIndex') can return a string of "auto" sometimes; have just seen this in IE8.
Thus the index in setZIndex can resolve to NaN which then blows up setStyle:
Code:
setZIndex: function(index) {
        var me = this,
            owner = me.activeOwner;
            
        if (owner) {
            // it seems silly to add 1 to have it subtracted in the call below,
            // but this allows the x-mask el to have the correct z-index (same as the component)
            // so instead of directly changing the zIndexStack just get the z-index of the owner comp
            index = parseInt(owner.el.getStyle('zIndex'), 10) + 1;
        }


        me.getMaskEl().setStyle('zIndex', index - 1);
        return me.mixins.floating.setZIndex.apply(me, arguments);
    },
Could we have some defence around it, something like, say:
Code:
    setZIndex: function(index) {
        var me = this,
            owner = me.activeOwner,
            ownerZIndex;
            
        if (owner) {
            // it seems silly to add 1 to have it subtracted in the call below,
            // but this allows the x-mask el to have the correct z-index (same as the component)
            // so instead of directly changing the zIndexStack just get the z-index of the owner comp
            ownerZIndex = parseInt(owner.el.getStyle('zIndex'), 10);
            if (!isNaN(ownerZIndex)) {
                index = ownerZIndex + 1;
            }
        }


        me.getMaskEl().setStyle('zIndex', index - 1);
        return me.mixins.floating.setZIndex.apply(me, arguments);
    },
Thanks,
Westy