您的位置:首页 > 其它

IE7和IE8出现的计算判断问题

2014-03-06 18:56 197 查看
吸住底部菜单

IE7和IE8下会卡死的算法

#contact{position:relative; height:61px; width:100%; display:inline-block; background:#f9f9f9; z-index:999;
}


function fixedBar(){
var _height=$(this).height()+$(this).scrollTop();
var _top=$("#contact").offset().top;
var _bar=$("#contact").height();
if($(this).height()+$(this).scrollTop()<_top+_bar){
$("#contact").css({"position":"absolute","top":_height-_bar+"px","box-shadow":"0px 1px 10px 0px #cccccc"});
//$("#contact").css({"position":"fixed","bottom":"0px","box-shadow":"0px 1px 10px 0px #cccccc"});
}
else{
$("#contact").css({"position":"relative","display":"block","top":"0px","box-shadow":"none"});
}
}


修正后的算法,并且改为fixed定位后不会闪烁

#contact{position:relative; height:61px; width:100%; display:inline-block; background:#f9f9f9; z-index:999; bottom:0;
}


var _isFrist=false;


function fixedBar(){
var _bar=$("#contact").height();
var bottomHeight=118+(48*3);
if($(this).scrollTop()<=document.body.clientHeight-bottomHeight-$(window).height()){
if(_isFrist){
document.getElementById("contact").style.position="fixed";
}
}else{
_isFrist=true;

if($(this).scrollTop()>=document.body.clientHeight-bottomHeight-$(window).height()+_bar){
document.getElementById("contact").style.position="relative";
}
//$("#contact").css({"position":"relative","display":"block","top":"0px","box-shadow":"none"});
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: