`
- 浏览:
60704 次
-
今天花费了很多时间处理上星期完成的ExtJs 3+java程序中存在的浏览器差异性问题。
首先是JSON.parse问题。 FF有这个对象, 但IE中没有。以eval()方法代替。
然后是字体大小问题,若不做任何CSS上的修改,火狐字体显示大小刚好, 但chrome和IE的字很小。在百度上找到的方法是修改extjs-all.css文件:把所有的11px替换成12px,因为11px是一个边缘尺寸, 两个浏览器显示的大小有差异。问题解决。
还有grid的行高。方法也是在百度上找的:添加并引用css:
.x-grid3-row td,.x-grid3-summary-row td{
line-height:23px;//控制GRID单元格高度
vertical-align:center;//单元格垂直居中
border-right: 1px solid #eceff6 !important;//控制表格列线
border-top: 1px solid #eceff6 !important;//控制表格行线
}
问题解决。
(这个大小问题, 无论是字体还是行高, 绝对是受浏览器缩放程度影响的, 但一开始我没考虑到这方面。 所以一直看ie不爽, 非常地不爽,因为它把字体显示的太小了。
现在回想一下, 还是自己的不是:有可能不是ie显示的太小了, 而是我的火狐放缩的太大了。于是我想看看我的火狐的页面放缩大小是否为100%, 但很无奈地没有找到查看或者设置的地方。Ctrl+滚动可以放大缩小, 但不能准确地定位在100%。)
最后一个是date的显示问题。服务器端传过来的对象类型是Java.sql.TimeStamp(java.util.Date的一个包装类)。在js代码columnModel的header定义里我使用了renderer:Ext.util.Format;.dateRenderer("Y-m-d")。这样做的结果是在ff和chrome中可以正常显示, 但在ie中为空白。有两个方向的解决办法:一:在js自定义函数解析;二,在服务器端解析成字符串。js在浏览器上的差异让我不是很喜欢js, 所以我选择了第二种方法:在java代码中使用new SimpleDateFormat ("yyyy-mm-dd"). format(date)将date解析成字符串。
最后再感叹一句, 如果天下间的浏览器只遵守一个标准就好了!这种多元化现状真是坑爹啊!
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
为了解决这个问题,可以在`ext-all.css`中全局搜索并替换所有11px为12px。这通常可以解决大部分浏览器的字体大小不一致问题。 3. 版本特定的解决方案:对于ExtJS的特定版本,如3.2.1,可能需要更精确的调整。在某些...
要实现"Extjs软键盘带中文输入",开发者需要考虑以下几个关键点: 1. **设计键盘布局**:根据用户习惯,设计包含常用拼音字母和五笔码的键盘界面,同时可能还需要提供切换拼音和五笔模式的功能。 2. **拼音输入...
同时,由于跨浏览器兼容性的良好支持,开发者无需担心浏览器差异带来的问题。 **SSH框架** SSH框架是由Struts、Spring和Hibernate三个开源框架组成的,它们各自负责Web层、业务层和持久层的处理。Struts处理MVC...
在实际应用中,我们还需要考虑兼容性问题,如浏览器的差异、触摸设备的支持等。此外,如果涉及到服务器数据的同步,还需处理网络延迟和错误处理。 源码分析对于理解实现细节至关重要。通过阅读和理解给出的"extjs5...
针对文字显示,我们可以从以下几个方面进行优化: 1. **字体与字号**:确保定义了正确的字体家族(font-family)和字号(font-size),并考虑使用相对单位(如em或rem)以便适应不同屏幕尺寸。火狐有时对某些Web...
在ExtJS中,创建一个Slider通常需要指定以下几个关键属性: 1. `width`:设置Slider的宽度。 2. `minValue` 和 `maxValue`:定义滑块可移动的最小和最大值。 3. `value`:设置初始选中的值。 4. `increment`:滑块...
针对“解决Ext在火狐下显示小字体的问题”,我们可以探讨以下几个关键知识点: 1. **CSS重置与浏览器兼容性**: 浏览器之间的默认样式可能存在差异,火狐和其他浏览器(如Chrome、IE)可能对字体大小和样式有不同...
不同浏览器对特定字体大小的渲染存在差异,特别是11px这个边缘大小。IE倾向于将11px渲染得更接近12px,而Firefox则更接近10px。因此,统一将所有11px替换为12px可以改善在Firefox中的显示效果,解决字体大小不一致...
为了解决这类问题,可以考虑以下几个方向: 1. 确保EXTJS库的版本一致。不同版本的EXTJS可能存在差异,包括对DOM操作和事件处理的支持。 2. 检查是否有JavaScript错误阻止了代码的执行。可以使用浏览器的开发者工具...
在解决问题的过程中,还需要注意代码的细节,例如确保节点属性名称和类型匹配,以及在ExtJs组件中正确地引用扩展类。例如: ```javascript Ext.app.BookLoader=Ext.extend(Ext.ux.tree.XmlTreeLoader, { // ... })...
在项目中,可能还需要考虑以下几个方面: - **安全性**:确保上传的文件不会带来安全风险,例如防止恶意文件上传或超出服务器存储限制。 - **错误处理**:对可能出现的网络问题、服务器错误等异常情况做好处理,...
导出GridPanel数据至Excel通常涉及到以下几个步骤: 1. **准备数据**:首先,你需要确保GridPanel中的数据是完整的,并且已经正确地绑定到了store中。数据可以来源于服务器端API,也可以是本地存储的数据。 2. **...
根据提供的万达面试题内容,我们可以总结出以下几个关键知识点: ### 1. Java中的单例模式(Singleton Pattern) 在描述部分提到“确保一个类只有一个实例,并提供一个全局访问点”,这正是单例模式的核心定义。...
-修正extjs最新版本(v3.2.2)中的一个bug,如果下拉列表中存在两个相同的Text,则SelectedValue返回值永远是第一个Text的值(feedback:ben.zhou)。 -应用补丁#6593, #6621(feedback:vbelyaev)。 +修正IE7下Grid分页...
每个引擎对DOM操作和重绘、重新布局的处理可能存在差异,因此优化策略需要针对目标浏览器进行调整。 总之,深入理解DOM操作的原理,尤其是重绘和重新布局的影响,是优化JavaScript性能的关键。通过一次性操作、克隆...
-修正了使用IFrameUrl的Tab在切换过程中会重复加载的问题,这是一个在v2.1.6引入的问题(feedback:eroach)。 -修正了启用AutoPostBack的Grid,其RowClick会覆盖LinkButtonField, HyperLinkField, CheckBoxField的...
在UniGUI中使用ADO(ActiveX Data Objects)通常涉及以下几个步骤: - **添加ADO组件**:在Delphi IDE中添加必要的ADO组件。 - **配置连接字符串**:设置正确的数据库连接字符串。 - **编写查询语句**:使用ADO组件...
此外,考虑到跨浏览器兼容性和性能优化,书中可能还会讨论如何处理不同浏览器之间的差异,以及如何通过优化代码和资源加载来提升控件的性能。这方面的知识对于一个专业的Web开发者来说是必不可少的。 最后,书中...
发布UniGUI开发的DLL涉及以下几个关键步骤: - **编译DLL**:首先确保DLL已经正确编译且无错误。 - **打包资源文件**:将DLL及所需的资源文件(如图像、字体等)打包。 - **创建安装程序**:可以使用第三方工具如...
`Viewport`是Ext框架中的一个容器组件,用于填充整个浏览器窗口。它采用`region`定义各个区块的显示,如`north`、`south`、`east`、`west`和`center`等。其中`center`区域是必不可少的,通常用来放置主要内容。 ###...