fixed定位(ie6下模拟fixed定位) 和标准布局的切换

fixed定位(ie6下模拟fixed定位) 和标准布局的切换,历经一天才发现ie6这个问题,废话不说直接看代码
第一步: 防止抖动:
var isIE6 = !!window.ActiveXObject && !window.XMLHttpRequest;
if (isIE6&&document.body.currentStyle.backgroundAttachment!== 'fixed'){
html=document.getElementsByTagName('html')[0],
html.style.backgroundImage = 'url(about:blank)';
html.style.backgroundAttachment = 'fixed';
}
第二步 ie6下使用expression定义top,或者left例如
h3.fixed{position:fixed; top:0px;_position:absolute;_top:expression(documentElement.scrollTop);}
注意ie6下此元素不能再定定义其他class 例如<h3 class="ul_wrap"></h3>这样的写的话expression就不起作用了啊

第三步 绑定事件,加上你的逻辑。
具体我的测试代码在这里;有疑问的可以联系我 qq:38926469
$(window).scroll(function(){
var sc_top=$(this).scrollTop();//获取滚动条的距离;
var top=$("h3").offset().top;
if((sc_top>top)&&(sc_top<(top+$("h3").outerHeight(true)))){
$("h3").addClass("fixed");
}else{
$("h3").removeClass().removeAttr("style");//ie6必须删除style,应为ie6下 expression就是相当于在该元素加了一个style;
}
});


$(window).scroll(function(){
var sc_top=$(this).scrollTop();//获取滚动条的距离;
var top=$("h3").offset().top;
if((sc_top>top)&&(sc_top<(top+$("h3").outerHeight(true)))){
$("h3").addClass("fixed");
}else{
$("h3").removeClass().removeAttr("style");//ie6必须删除style,应为ie6下 expression就是相当于在该元素加了一个style;
}
});






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值