f1.onclick = function () { navClick(nav) }; //添加单击事件,调用滚动函数
f2.onclick = function () { navClick(fl2) }; //这里给4个标签添加单击事件,调用下面函数
f3.onclick = function () { navClick(n) }; //但在火狐下只有第一个有效,为嘛啊!!
f4.onclick = function () { navClick(fl4) };
function navClick(top) { //滚动函数
var sTop = document.body.scrollTop || document.documentElement.scrollTop; //兼容火狐
var f = top.offsetTop-90; //导航栏高度
var len = (Math.abs((sTop) - f))/50;
var count = 0;
var interval = setInterval(function () { //计时器,实现点击导航栏后的滑动效果
if (sTop>f) { //主要是这个if else
document.body.scrollTop -= len;
//document.documentElement.scrollTop-= len;//把这句话写上怕两次做差会出错
}
else {
document.body.scrollTop += len;
//var a=document.body.scrollTop || document.documentElement.scrollTop;
//a += len; //谷歌又不认了
}
count++;
if (count == 50) {
clearInterval(interval);
count = 0;
document.body.scrollTop = f; //f不能有小数,用此句解决
}
}, 10);
}刚刚接触js,望大神们能指点一下。还有最最最重要的就是,像这种兼容性问题有没有什么类似于css帮助文档的东西??各位大神遇到这种情况要怎么去解决的?我硬是百度了一天也没整明白,愁死了!
添加回答
举报
0/150
提交
取消