`

firefox 2 的一个bug (更新) :关于页面元素位置信息

阅读更多
对不起大家,晚上6点多的时候 发帖子心切 举错了例子

这次这个例子更明显点

详细的看附件里的文件

对不起大家, 我的例子
附件文件 在 ie ff3 opear safari 下运行效果是一致的

但是在 ff2 里却是错误的

看来今后大家在编写跨浏览器代码的时候  FF2 和 FF3 要区别对待

关键在于 那个table的位置.

在ff2下 table的offsetLeft/offsetHeight 以及td的offsetLeft/offsetHeight
和在其他浏览器里有出入(其他浏览器都差不多 +-在几像素之间,而FF2则比较离谱)

更夸张的是 在ff2下  table.offsetLeft 居然能取到-1


这个我觉得是比较大的问题. 现在很多ajax框架 只是区分了 ff和 非ff 而ff内部的版本并没有做判断.

从实际情况来看,应该是 FF2有错, FF3修正了这个错误

(主贴文字比较少,但是大家看一下附件 , 我个人绝对这个不算是水贴和入门贴 呵呵)

<html>
 <head>
 <title>firefox 2 的 bug ?</title>
 <style>

* {
	font-size:12px;
}

 </style>

<script type="text/javascript" >

function getPos(td){
	var testT=document.getElementById('testT');

	var msg=document.getElementById('msg');

	var str=[
		'table.offsetLeft : '+testT.offsetLeft,
		'table.offsetTop : '+testT.offsetTop,

		'td.offsetLeft : '+td.offsetLeft,
		'td.offsetTop : '+td.offsetTop

	];

	msg.innerHTML=str.join('<br/>');
}

</script>
 </head>

 <body>
  <div style="position: relative; width:500px;height:200px;overflow:hidden; border:1px #cccccc solid;">

点击单元格,看提示

<table id="testT" style="margin-left:20px;" border="1">
<tr>
	<td onclick="getPos(this)">123...........</td>
	<td onclick="getPos(this)">3345..........</td>
	<td onclick="getPos(this)">tert............</td>
</tr>
<tr>
	<td onclick="getPos(this)">3454............</td>
	<td onclick="getPos(this)">hfgh............</td>
	<td onclick="getPos(this)">fghfgh............</td>
</tr>
</table>
  </div>

  <div id="msg"></div>
 </body>
</html>



分享到:
评论
6 楼 hax 2008-03-04  
见微知著。
5 楼 fins 2008-03-04  
hax 写道
fins的体验里有一个很好的经验,就是如何判断一个问题,是程序问题,还是浏览器的问题,如果是浏览器问题,那哪一种才是正确的。
这个小窍门就是拿最新版的FF、Safari和Opera来看。特别是FF和Safari,可以互为参考。

BTW,建议fins以后的文件都存成utf-8带bom。这样浏览器可以正确识别本地文件编码。


谢谢hax指教:)

最近我发现我再次陷入细节的泥沼了

以前曾经就 关注细节和在细节中迷失 发表过一篇博文
但是落实到实际当中 我发现我根本控制不好自己

很多问题 找不到答案时就喜欢自己瞎研究

愁啊
4 楼 hax 2008-03-04  
不过,offsetXXX属性其实有点问题。offsetXXX属性并非标准,而是IE的创造,而MSDN对这些属性的定义本身存在含混。所以其实offsetXXX在FF中bug好像是挺多的。比方说有人报告说有border的时候存在问题。

fins说的这个bug,在bugzilla里是有类似记录的:
https://bugzilla.mozilla.org/show_bug.cgi?id=258255
https://bugzilla.mozilla.org/show_bug.cgi?id=356665
https://bugzilla.mozilla.org/show_bug.cgi?id=307502

当然,我不是很吃准到底是哪几个bug跟这个问题相关。


3 楼 hax 2008-03-04  
fins的体验里有一个很好的经验,就是如何判断一个问题,是程序问题,还是浏览器的问题,如果是浏览器问题,那哪一种才是正确的。
这个小窍门就是拿最新版的FF、Safari和Opera来看。特别是FF和Safari,可以互为参考。

BTW,建议fins以后的文件都存成utf-8带bom。这样浏览器可以正确识别本地文件编码。
2 楼 fins 2008-03-04  
对不起 例子一开始举错了

这次更正了

楼上的再试试看
1 楼 QuakeWang 2008-03-04  
我在Firefox2下面看到和IE的效果是一样的,你说的bug是什么呢?

相关推荐

    IE又一个让人吐血的BUG: 关于 table的position 和 select

    标题中的“IE又一个让人吐血的BUG: 关于 table的position 和 select”指的是在Internet Explorer浏览器中,当处理表格(table)元素的定位(position)属性与下拉选择框(select)元素交互时出现的一个常见问题。...

    Firefox火狐浏览器官方Setup 92.0b2-win64版本msi安装包

    《Firefox火狐浏览器92.0b2-win64版本msi安装包详解》 Firefox火狐浏览器,作为全球知名的开源网络浏览器,以其强大的安全性能、丰富的扩展插件以及高度的自定义性深受用户喜爱。这里我们将深入探讨Firefox 92.0b2-...

    Firefox火狐浏览器官方9.0b2-mac版本dmg安装包

    标题中的“Firefox火狐浏览器官方9.0b2-mac版本dmg安装包”表明了这是一个针对Mac操作系统设计的Firefox浏览器版本,具体是9.0b2(即9.0的第二个β测试版)。火狐浏览器,全称为Mozilla Firefox,是由Mozilla基金会...

    Firefox火狐浏览器官方94.0b8-mac版本pkg安装包

    《Firefox火狐浏览器94.0b8-mac版本pkg安装包详解》 Firefox火狐浏览器,作为全球知名的开源浏览器之一,一直以来以其高度定制化、安全性以及强大的隐私保护功能受到用户的喜爱。94.0b8是Firefox的一个预发布版本,...

    Firefox火狐浏览器官方88.0b8-mac版本pkg安装包

    标题中的“Firefox火狐浏览器官方88.0b8-mac版本pkg安装包”表明我们正在讨论的是Mozilla Firefox网络浏览器的特定版本,88.0b8,这是针对苹果Mac操作系统的。火狐浏览器(Firefox)是一款开源、免费的网络浏览器,...

    Firefox火狐浏览器官方96.0b1-mac版本pkg安装包

    **Firefox火狐浏览器官方96.0b1-mac版本pkg安装包** Firefox是一款由Mozilla公司开发的开源网络浏览器,以其强大的安全性、隐私保护和高度的定制性而广受用户喜爱。96.0b1版是Firefox的一个早期版本,其中可能包含...

    Firefox火狐浏览器官方Setup 49.0b7-win64版本exe安装包

    标题中的“Firefox火狐浏览器官方Setup 49.0b7-win64版本exe安装包”指的是Mozilla Firefox的49.0b7预览版,适用于Windows 64位操作系统的安装程序。这个版本是Firefox浏览器的一个早期版本,发布于2016年,其主要...

    Firefox火狐浏览器官方26.0b8-win32版本exe安装包

    标题中的“Firefox火狐浏览器官方26.0b8-win32版本exe安装包”指的是Mozilla Firefox的一个特定版本,即26.0b8,这是一个适用于Windows 32位操作系统的安装程序。Firefox是一款开源、免费的网络浏览器,由Mozilla...

    Firebug是firefox下的一个插件

    Firebug是Firefox浏览器的一款不可或缺的插件,被誉为五星级强力推荐工具,尤其对于Web开发者来说,它的重要性不言而喻。Firebug将HTML查看和编辑、JavaScript控制台以及网络状况监视器等功能整合在了一起,极大地...

    Firefox火狐浏览器官方26.0b4-win32版本exe在线安装包

    《Firefox火狐浏览器26.0b4-win32版本:深入解析与使用指南》 Firefox,这款由Mozilla基金会开发的开源网络浏览器,以其强大的安全性能、高度的自定义性和跨平台兼容性,在全球范围内拥有大量的用户。在本文中,...

    Firefox火狐浏览器官方90.0b1-mac版本pkg安装包

    总的来说,Firefox火狐浏览器官方90.0b1-mac版本提供了一个了解和评估最新开发进展的机会,通过下载和安装pkg安装包,用户可以在Mac上享受这款强大的开源浏览器带来的各种改进和新特性。同时,参与测试也能帮助推动...

    Firefox火狐浏览器官方78.0b7-mac版本pkg安装包

    标题中的“Firefox火狐浏览器官方78.0b7-mac版本pkg安装包”表明了这是一个针对Mac OS系统的Firefox浏览器的特定版本,即78.0b7版。这个版本号意味着它是一个早期的测试版(Beta),在正式发布之前用于收集用户反馈...

    Firefox火狐浏览器官方62.0b13-win32版本exe安装包

    《Firefox火狐浏览器62.0b13-win32版本详解》 Firefox,这款由Mozilla公司开发的开源网络浏览器,一直以来都以其高度定制化、安全性以及对Web标准的出色支持而深受用户喜爱。本文将深入探讨Firefox 62.0b13-win32...

    浏览器兼容性汇总

    - **火狐(Firefox)**: 使用 `document.getElementById("idName")` 获取DOM元素。 - **IE**: 支持 `document.idname` 和 `document.getElementById("idName")`。 **解决方案**: 统一采用 `document.getElementById...

    IE与Firefox的CSS兼容大全

    1. IE的`position:fixed`在某些版本中存在bug,可能无法正确固定元素位置。 2. Firefox对`position:fixed`的支持较好。 八、单位支持 1. IE6不支持em和百分比单位,推荐使用像素。 2. Firefox支持em、百分比等...

    Firefox火狐浏览器官方78.0b1-mac版本pkg安装包

    《Firefox火狐浏览器78.0b1-mac版本安装详解》 Firefox火狐浏览器,作为全球知名的开源网络浏览器,以其强大的安全性、可定制性和开放性深受用户喜爱。本文将详细解析Firefox 78.0b1的mac版本安装包,帮助Mac用户...

    火狐浏览器带Firebug

    火狐浏览器(Firefox)是一款由Mozilla开发的开源网络浏览器,以其强大的安全性、隐私保护和高度可定制性而受到全球用户的广泛欢迎。而“火狐浏览器带Firebug”指的是该浏览器版本集成了Firebug工具,这是一个曾经...

    BugFree的使用

    - **统计信息**:展示了查询结果的统计概况,有助于管理者或测试人员对项目的质量有一个宏观的把握。 通过以上详细介绍,我们可以了解到BugFree不仅是一款强大的缺陷管理系统,还具备高度的灵活性和定制性,能够...

    Firefox2中输入框丢失光标bug的解决方法

    在Firefox2浏览器中,用户可能会遇到一个相当烦人的技术问题,即输入框丢失光标的现象。这主要表现为当用户尝试在网页表单中输入信息时,尽管输入是可行的,但光标却没有显示,造成用户难以判断输入的位置,极大地...

    js 放大镜 有bug

    通常,它会使用两个图片元素:一个显示原始大小的图片,另一个用于显示放大的部分。当鼠标移动时,放大镜会动态调整放大区域的位置,以跟随鼠标的移动轨迹。这需要通过JavaScript事件监听(如`mousemove`)来实现,...

Global site tag (gtag.js) - Google Analytics