IE9奇怪的位置固定问题

如果你去这里 ,在向下滚动页面时你会注意到包含购物和类别的右侧面板也在移动…

我用这个脚本:

$(function () { var btn = $('.scroll'); var btnPosTop = btn.offset().top; var win = $(window); win.scroll(function (e) { var scrollTop = win.scrollTop(); if (scrollTop >= btnPosTop) { btn.css({ position: 'fixed', top: 10, marginTop: 0, 'z-index': 1, width: '260px'}); } else if (btn.css('position') === 'fixed') { btn.css({ position: '', top: '', marginTop: '0px', 'z-index': 0 }); } }); }); 

一切都很好,除了在IE 9中,在向下滚动时不再显示div(哦,对,它在那里但是不可见)。

你可以注意到,我甚至试图在上面的脚本中使用z-index ,希望这可以解决问题,但这是徒劳的。

你们能提出解决方案吗?

添加position : relative对于您的#sidebar

z-index仅在position不是static时才有效。