我已经设置了一个页面,当用户使用鼠标或触控板滚动时,该页面将浏览一系列图像。我正在使用jQuery来测量距页面顶部的距离 - scrollTop() - 然后更改DOM中特定id的图像源。
这在Firefox,Chrome,Safari,Opera,IE9以及iPad,iPhone等上运行良好。但是,它在IE8中无效。
这是HTML:
<div id="flipping-container">
<img id="flipping-id" class="flippingTarget" src="imageOne.png" alt="imageone" />
</div>
这是JS:
$(document).scroll(function() {
var toTop = $(document).scrollTop();
if (toTop <= 340) {
$('.flippingTarget').attr('src','imageOne.png');
}
else if ((toTop <= 392) && (toTop > 341)){
$('.flippingTarget').attr('src','imageTwo.png');
}
else if ((toTop <= 445) && (toTop >= 393)){
$('.flippingTarget').attr('src','imageThree.png');
}
// AND SO ON
// ENDING WITH...
else {
$('.flipping-target').attr('src','image1.png');
};
});
“flipping-container”的div ID被赋予一个CSS值:position:fixed;所以它总是可见的。
我已经倾注了StackOverflow帖子,并且还没有设法找到一个可行的解决方案。 scrollTop()值正在被完全读取,因为我在按钮上点击事件会将页面平滑地从顶部滚动到div和/或多个像素。 IE8很好用,所以它不是html / body / document / window scrollTop()问题。
我已经为.addClass()切换了.attr()值,看看是否会拾取它。但它不适用于IE8。所以它可能与src属性本身没有直接关系。我已经仔细检查了我的班级名称和目标,他们一切都很好(其他浏览器也按照预期的方式证明了这一点)。
任何线索?任何帮助将不胜感激。