最近在学习一个全新的JavaScript UI类库Ext,这个类库据说之前是YUI的一个扩展(Extension)后来独立出来逐步发展成为一个UI界面组件丰富js类库。可以说在之前的了解中,我也觉得Ext在表现UI界面上确实更胜一筹。
令人郁闷的是,今天进行第一次的Ext学习就遇到了显示上的一个“错位”。所谓bug是指软件上所存在的缺陷与不足,是需要去修复的。所以在断定一个问题是否是软件的一个bug需要谨慎而冷静地判断,尤其是在使用别人的软件时。我不能断定这个显示错位问题是否是Ext开发者忽略掉的一个兼容性问题,但是可以断定的是IE7在显示上确实存在bug(因为在非IE浏览器上测试均通过)。下面详细描述我遇到的问题:
首先是一句简单的不能在简单的代码,显示一个Alert对话框,代码如下所示:
Ext.onReady( function () {
Ext.Msg.alert("Ext Alert", "Hello, Ext!");
});
这是IE与非IE浏览器的显示就有偏差了,如下图所示,左侧为IE7呈现的界面,右侧为火狐(Firefox)呈现的界面:
显然IE在显示上显现出了偏差!后经多次测试,如果Alert对话框的显示内容不是很少(也就是字符串长度不是很小)的话,二者显示还是正常的,图我就不截了,因为效果都是一样的^^,现给出测试代码:
Ext.onReady( function() {
Ext.Msg.alert("Ext Alert", "Hello, Ext! This is really amazing!");
});
Ext的官网是:http://www.extjs.com/
Ext JavaScript 类库的下载地址:http://www.extjs.com/deploy/ext-2.2.1.zip