本文介绍如何使用jQuery实现侧边栏随滚动条固定显示的功能,适用于长页面购物车或广告展示。通过监听window.scroll事件判断元素位置,动态添加fixed类。针对IE6浏览器,利用expression表达式实现绝对定位兼容,确保在旧版浏览器中也能正常显示固定侧边栏效果。
侧边栏固定功能应用场景
部分购物网站利用此功能展示购物车或商品分类导航,当产品页面较长时,侧边栏能始终固定以发挥其作用;也有网站利用该功能展示侧边栏广告。
jQuery实现代码
jQuery代码:
代码如下:
var rollSet = $('#Roll');// 检查对象,#sidebar-tab是要随滚动条固定的ID,可根据需要更改
var offset = rollSet.offset();
$(window).scroll(function () {
// 检查对象的顶部是否在游览器可见的范围内
var scrollTop = $(window).scrollTop();
if(offset.top < scrollTop){
rollSet.addClass('fixed');
}else{
rollSet.removeClass('fixed');
}
});CSS代码:
CSS样式与IE6兼容处理
代码如下:
.fixed{position:fixed; top:20px;}
.fixed{_position:absolute; _top:expression((20+(noValue = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop))+'px');}//兼容IE6