`
salazar
  • 浏览: 31008 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

兼容chrome与firefox使用offsetWidth得到不同值的问题

阅读更多

Ext3.x

 

Ext.MessageBox.alert 在chrome与firefox显示的宽度不一致问题

 

究其原因是因为msgEl.getWidth()得到的值不一致导致的

 

修正宽度应方法:

 

chrome:

 

rect = dom.getBoundingClientRect();

Math.ceil(rect.right - rect.left)

 

firefox:

 

dom.offsetWidth;

 

 

updateText : function(text) {
			if (!dlg.isVisible() && !opt.width) {
				dlg.setSize(this.maxWidth, 100);
			}

			msgEl.update(text ? text + ' ' : ' ');

			var iw = iconCls != '' ? (iconEl.getWidth() + iconEl
					.getMargins('lr')) : 0, mw = msgEl.getWidth()
					+ msgEl.getMargins('lr'), fw = dlg.getFrameWidth('lr'), bw = dlg.body
					.getFrameWidth('lr'), w;
			// @fixed chrome width
			if (Ext.isChrome) {
				rect = msgEl.dom.getBoundingClientRect();
				mw = Math.ceil(rect.right - rect.left);
			}

			w = Math.max(Math.min(opt.width || iw + mw + fw + bw, opt.maxWidth
					|| this.maxWidth), Math.max(opt.minWidth || this.minWidth,
					bwidth || 0));
 

 

分享到:
评论

相关推荐

    兼容ie,FF,chrome,opera的弹出层居中js

    标题“兼容ie,FF,chrome,opera的弹出层居中js”所指的就是一个JavaScript实现的弹出层(popup layer)定位代码,它能在Internet Explorer(IE)、Firefox(FF)、Chrome以及Opera这些主流浏览器中实现居中显示。...

    javascript获取设置div的高度和宽度兼容任何浏览器.docx

    - 这两个属性在现代浏览器(如 Chrome、Firefox、Safari 和 Edge)中广泛支持。 - 在 Internet Explorer 中也支持这两个属性。 #### 设置 div 高度和宽度 1. **使用 `style` 属性:** - **定义**:可以使用 `...

    CSS中expression使用简介

    2. **浏览器兼容性**:`expression`仅在IE浏览器中支持,其他浏览器如Firefox、Chrome、Safari和Opera等都不支持,这会导致跨浏览器的样式不一致。 3. **错误处理**:如果`expression`中的JavaScript代码有错误,会...

    在chrome中[removed]事件的一些问题

    问题在于,当在Chrome中使用`window.onload=new init()`时,图片的`offsetWidth`为0,这意味着在`window.onload`触发时,图片可能还没有完成加载。而在Internet Explorer (IE) 和Firefox中,这段代码却能够正确地...

    js获取浏览器高度和宽度值(多浏览器)

    本文将详细介绍如何在多种浏览器环境下,包括IE、Firefox和Chrome等,获取浏览器的宽度和高度。 首先,我们来看IE浏览器中的方法: 1. `document.body.clientWidth`:返回BODY元素的宽度,不包括滚动条和边框。 2....

    clientHeight

    在大多数现代浏览器(如Firefox、Chrome、Safari等)中,`clientHeight` 和 `clientWidth` 返回的是元素内容区域的大小,即不包括滚动条和边框的尺寸。但在旧版IE中,如果元素没有定义具体的宽度和高度,则`...

    javascript offsetX与layerX区别.docx

    需要注意的是,`offsetX`属性只在某些浏览器(如IE、Chrome、Safari)中有效,而在Firefox中并不支持该属性。 **示例代码**: ```javascript function GetMousePosStr(evnt, ele) { if (!evnt) { evnt = window....

    html页面高度不固定在不同浏览器下的兼容性设置

    在实际开发中,确保在所有主流浏览器(如IE、Firefox、Chrome、Safari和Opera)下进行测试,以便调试和优化这些兼容性问题。同时,可以利用像Modernizr这样的库来检测浏览器特性,进一步增强代码的适应性。 总之,...

    详解js几个绕不开的事件兼容写法

    例如,IE和Chrome使用`document.body.scrollTop`,而Firefox则使用`document.documentElement.scrollTop`。为了兼容所有浏览器,可以这样编写: ```javascript var client_w = document.documentElement....

    document.body.scrollTop用法

    - 对于大多数现代浏览器(如 Chrome、Firefox、Safari),使用 `document.documentElement.scrollTop` 来获取页面的滚动位置更为可靠。 ```javascript var scrollTop = document.documentElement.scrollTop; ``` ...

    JS获取浏览器的高度和宽度

    Firefox、Chrome、Safari等W3C标准支持较好的浏览器,它们的行为与IE类似,但也有所区别: - `document.body.clientWidth` 和 `document.body.clientHeight` 同样返回BODY对象的宽度和高度。 - `document....

    jquery 实现表格列宽调整

    7. **兼容性测试**:完成功能后,务必进行广泛的浏览器兼容性测试,确保在主流浏览器如 Chrome、Firefox、Safari、Edge 以及旧版 IE 中都能正常工作。 通过这些知识点,我们可以构建出一个功能完善的表格列宽调整...

    JS getStyle获取最终样式函数代码

    3. **浏览器兼容性**:不同浏览器(如IE、Chrome和Firefox)可能会以不同的方式处理和存储样式的值。例如,IE浏览器使用`filters`对象来处理透明度(opacity)属性。`getStyle`函数尝试通过不同的方式来兼容不同...

    js控制层的拉大拉小

    例如,Firefox和Chrome在处理CSS像素和实际像素时可能会有差异,这时可能需要使用`getBoundingClientRect`方法获取元素的实际位置。对于IE浏览器,可能需要使用不同的事件模型,如attachEvent代替addEventListener。...

    js 实现右下角视频弹窗

    本文将详细讲解如何使用JavaScript(js)来实现这一功能,同时考虑到浏览器兼容性,包括IE6、7、8、9以及火狐(Firefox)、谷歌浏览器(Chrome)等。 首先,我们需要一个HTML结构来承载视频元素。HTML5引入了`...

    js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法

    JavaScript是Web开发中不可或缺的一部分,尤其在处理页面交互和动态效果时。在本文中,我们将深入探讨如何使用JavaScript获取...在实际项目中,一定要注意跨浏览器的兼容性问题,并使用适当的技巧来解决这些问题。

    js获取浏览器和屏幕的各种宽度高度

    对于现代浏览器(IE9+、Chrome、Firefox、Opera、Safari),可以使用window对象的innerWidth和innerHeight属性来获取。这两个属性分别代表浏览器窗口的内部宽度和高度。而对于更早期的IE版本(IE8、IE7、IE6、IE5)...

    JS图片放大镜.rar

    - 兼容性测试:确保在主流浏览器(Chrome, Firefox, Safari, Edge等)上运行正常。 通过以上步骤,我们可以创建一个简单的JavaScript图片放大镜效果。实际应用中,可能还需要根据项目需求进行定制和优化,比如添加...

    javascript特效无缝滚动marquee

    JavaScript实现的无缝滚动方案能更好地兼容现代浏览器(如Firefox、Opera、Safari、Chrome)。 - 为了确保兼容性,我们需要考虑使用`requestAnimationFrame`来代替定时器,它能提供更平滑的动画效果,且能适应...

    css最大宽度 css控制图片的最大宽度及expression学习

    请注意,虽然上述代码在IE浏览器中能正常工作,但因为“expression”属性是特定于IE的,它并不兼容其他主流浏览器,比如Chrome、Firefox或Safari。现代的Web开发应当避免使用这类特定浏览器的特性,而应当使用跨...

Global site tag (gtag.js) - Google Analytics