关于修补Ext2.2 datefield IE8 下显示不全的bug

关于Exjts2.2.1中datefield控件在IE8下显示不全BUG解决如下

 

1、判断是否当前浏览器是否IE8

Ext.isIE8 = Ext.isIE && navigator.userAgent.indexOf('MSIE 8')!=-1;

 

2、重写ext-all.js中方法(25897行)

 

Ext.override(Ext.menu.Menu, {
    autoWidth : function(){      
        var el = this.el, ul = this.ul;      
        if(!el){      
            return;      
        }      
        var w = this.width;      
        if(w){      
            el.setWidth(w);
        }else if(Ext.isIE && !Ext.isIE8){   //Ext2.2 支持 Ext.isIE8 属性   
            el.setWidth(this.minWidth);      
            var t = el.dom.offsetWidth;      
            el.setWidth(ul.getWidth()+el.getFrameWidth("lr"));      
        }      
    }      
});

 

 3、以上两部分即能解决此BUG

 

 

你可能感兴趣的:(浏览器,ext)