Firefox 3.6 Javascript自定义滚动条性能

时间:2010-10-20 09:56:44

标签: javascript performance firefox

我在javascript中编写了一个自定义滚动条类,用于“freezepane”结构。 大多数浏览器(包括IE6 !!!)的性能都很好。但在Firefox 3.6(测试版4很好)它是非常生涩。 移动滚动条时,onmousemove事件计算一个位置,然后将新位置发送到回调,该回调设置2个元素的style.left(或top),这两个元素大于隐藏溢出内容的父DIV容器。 冷冻窗格的主要内容是一个绝对定位的DIV包装一个大而复杂的桌面结构(用于显示市场价格) - 我已经将它缩小到style.left(或top)的重复设置,因为它是FF的性能瓶颈..有什么技巧可以改善这个吗?我真的不明白IE6在这个上的表现如何优于FF!

提前致谢 Dazz

2 个答案:

答案 0 :(得分:0)

我考虑不使用JavaScript进行滚动,而是使用普通的隐藏滚动条。

请参阅:Custom scroll bar visualization with HTML/CSS/JavaScript

简而言之:使用overflow-y: scroll;向div添加滚动条,并使用overflow: hidden;隐藏另一个div后面的滚动条。

没有JavaScript,为您提供本机性能和原生行为。

答案 1 :(得分:0)

使用本机滚动条确实有效,但不知道任何滚动溢出会生成一个onscroll事件,您可以将其设置为将其他容器的scrollLeft设置为实现冻结窗格效果的相同值。