我有这个javascript代码来显示启动网站的消息:
Ext.onReady(function(){
Ext.MessageBox.show({
title:'Welcome to Site',
msg:'Welcome to this website!.',
buttons:Ext.MessageBox.OK,
icon:Ext.MessageBox.INFO
});
});
它在Firefox和Chrome中运行良好,但在Internet Explorer 9中显示效果不佳。有关如何解决问题的想法吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
问题可能是由于需要对Ext.js进行版本升级。
3.4之前的版本存在浏览器版本嗅探或时间错误,导致Ext.onReady
无法正确确定何时发生该事件。
Internet Explorer 9抛出的一个特定错误是传递的null或未定义的对象:
SCRIPT5007:无法获取属性“addClass”的值:object为null或undefined
来自以下代码段:
<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');
死亡。
如果有人想让老版本临时解决这个问题,请随时发表评论。