ie6下jquery问题:滚动条越过绿色区域后 文字区域置顶
发布网友
发布时间:2022-04-30 18:17
我来回答
共1个回答
热心网友
时间:2022-04-23 09:46
css中使用了expression()函数,相当于执行了js,即使移除了该样式,js依然生效,故不能在css中使用该函数,可修改如下:
js:
$(function(){
var _fbox=$("#fixed-box"),
_win=$(window),
_top=_top||_fbox.offset().top,
isTop=false;
if($.browser.msie&&$.browser.version=="6.0"){
_win.scroll(function () {
var _scrollTop=_win.scrollTop();
if(_scrollTop>_top){
isTop=true;
_fbox.css("top",_scrollTop+"px");
}
else if(_scrollTop<=_top&&isTop){
isTop=false;
_fbox.css("top",_top+"px");
}
});
}
else{
_win.scroll(function(){
var _scrollTop=_win.scrollTop();
if(_scrollTop>_top&&!isTop){
isTop=true;
_fbox.addClass('setfixed');
}
else if(_scrollTop<_top&&isTop){
isTop=false;
_fbox.removeClass('setfixed');
}
});
}
});
//其中isTop变量的引入是为了优化性能
css:
body{height:2000px; margin:0px;}
.main{height:390px;background:#9FC}
.fixed-link{position:absolute;top:390px;z-index:999;left:50%;margin-left:535px;}
.setfixed{position:fixed;top:5px;}