1
每当我更改给定的div的zIndex(甚至到相同的值),它的scrollTop属性重置,它滚动回来开始。这会对我的网站造成非常难看的效果(在重新绘制整个div时减速和黑色矩形)。 scrollTop reset后,我可以设置它,但这会导致另一个丑陋重绘。Firefox的scrollTop重置zIndex更改
这个FF bug让我很生气!我在mozilla https://bugzilla.mozilla.org/show_bug.cgi?id=623937中提交了一个bug,但他们并不在意它的工作!请问,如果有人知道如何解决这个问题与一些JavaScript魔术?也许玩HTMLElement原型以某种方式覆盖scrollTop?
这里去一个小的测试案例”
<html>
<head>
<style type="text/css">
div#parentDiv
{
position: absolute;
top: 10px;
left: 10px;
width: 300px;
height: 200px;
background-color: green;
}
div#elementToScroll
{
position: absolute;
top: 40px;
left: 40px;
width: 200px;
height: 100px;
overflow-y: hidden;
background-color: blue;
color: white;
}
</style>
</head>
<body>
<div id="parentDiv">
This is the parent DIV
<div id="elementToScroll">This is the child div with overflow-y: hidden and content a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of a lot of ; </div>
</div>
<script>
var parentDIV = document.getElementById("parentDiv");
var elementToScroll = document.getElementById("elementToScroll");
alert ("elementToScroll.scrollTop initial: " + elementToScroll.scrollTop);
elementToScroll.scrollTop = 20;
alert ("We set elementToScroll.scrollTop = 20: current value is: " + elementToScroll.scrollTop);
parentDIV.style.zIndex = 0;
alert ("We set parentDIV.style.zIndex and now elementToScroll.scrollTop is: " + elementToScroll.scrollTop);
</script>
</body>
</html>
这是一个完整的神秘火狐如何决定什么提交真实开发商的bug – selbie 2011-02-05 06:26:15
它似乎并不特定于zIndex。切换可见性样式也会重置滚动位置。 – selbie 2011-02-05 07:11:10