该问题可能是由于需要对 Ext.js 进行版本升级引起的。
3.4 之前的版本存在浏览器版本嗅探问题或时间错误,导致Ext.onReady
无法正确确定该事件何时发生。
Internet Explorer 9 抛出的一个特定错误是传递了 null 或未定义的对象:
SCRIPT5007:无法获取属性“addClass”的值:对象为空或未定义
从如下代码片段:
<script type="text/javascript">
//<![CDATA[
Ext.onReady(function() {
var tabs = new Ext.ux.Tabs('tabs',
activeTab: 'tab-description'
});
});
//]]>
</script>
这是一个非常简单的选项卡面板,适用于除 IE 9 之外的所有内容,但由于它抱怨'tabs'
无法在 Ext 代码中传递给以下代码而失败:
constructor : function(element, config) {
Ext.apply(this, config);
Ext.ux.Tabs.superclass.constructor.call(this);
this.addEvents(
'beforetabchange',
'tabchange'
);
this.el = Ext.get(element);
this.init();
},
init : function() {
var me = this;
this.el.addClass('ux-tabs-container');
因此this.el = Ext.get(element);
未能找到确定为tabs
和导致this.el.addClass('ux-tabs-container');
死亡的元素。
如果有人有临时获得旧版本以解决此问题的拐杖,请随时发表评论。