EXTJS2.2在ie10下报如下错SCRIPT5007: 无法获取未定义或 null 引用的属性“ui” 
ext-all.js, 行9 字符345588求大神指教Ext JSIE10

解决方案 »

  1.   

    因为报的是ext的文件错误,压根就看不懂
      

  2.   

    把ext-all.js换成ext-all-debug,这样好找bug些.
    水平有限,看到你这个问题描述,几乎无从下手。
      

  3.   

    还没换成ext-all-debug.js啊,这底层错误,你一直用ext-all.js是无法做调试的。
      

  4.   

    ext-all-debug.js   不会用这个调试
      

  5.   

    在ext-all.js下找这个getAttributeNS 方法,把判断ie的代码注释掉就好了
    getAttributeNS : /*Ext.isIE ? function(ns, name){
            var d = this.dom;
            var type = typeof d[ns+":"+name];
            if(type != 'undefined' && type != 'unknown'){
                return d[ns+":"+name];
            }
            return d[name];
        } : */
        function(ns, name){
            var d = this.dom;
            return d.getAttributeNS(ns, name) || d.getAttribute(ns+":"+name) || d.getAttribute(name) || d[name];
        }
      

  6.   

    改成这个,IE9和IE10下有效,不过最好还是用IE10的兼容模式,否则别的一些js方法也变了getAttributeNS : (Ext.isIE && !(/msie 9/.test(navigator.userAgent.toLowerCase())  && document.documentMode === 9)
         && !(/msie 10/.test(navigator.userAgent.toLowerCase())  && document.documentMode === 10))
          ? function(ns, name){
            var d = this.dom;
            var type = typeof d[ns+":"+name];
            if(type != 'undefined' && type != 'unknown'){
                return d[ns+":"+name];
            }
            return d[name];
        } : function(ns, name){
            var d = this.dom;
            return d.getAttributeNS(ns, name) || d.getAttribute(ns+":"+name) || d.getAttribute(name) || d[name];
        }
      

  7.   

    这个很好解决
    在<head>里加<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
    一切OK
      

  8.   

    ExtJS有些功能不支持IE9以上的版本了,我们公司全部换成JQuery了。