首页 > 编程 > JavaScript > 正文

JS实现部分HTML固定页面顶部随屏滚动效果

2019-11-20 10:56:26
字体:
来源:转载
供稿:网友

本文实例讲述了JS实现部分HTML固定页面顶部随屏滚动效果。分享给大家供大家参考,具体如下:

我们经常在淘宝网看到这样的特效,商品列表特别长,而商品列名称始终保持在最顶端。如果你把滚动条滚动至最上边了,那么它会自动判断是否到顶端了,然后一直置顶从而不怕遮挡。

这种特效是通过JavaScript和CSS实现的,在实际开发中有不少用途,下面是我找到的一个使用JavaScript制作的仿淘宝智能浮动的源代码,兼容性不错,在IE、Firefox、Chrome下都能正常工作。

使用这个特效代码需要注意,如果在侧边栏使用,则需要注意,侧栏中的栏目不能使用JavaScript动态加载,必须用静态的格式,否则在JavaScript会错误的计算页面高度,上下滚动的时候会出现错位现象。

JavaScript代码:

(function(){  var oDiv=document.getElementById("float");  var H=0,iE6;  var Y=oDiv;  while(Y){H+=Y.offsetTop;Y=Y.offsetParent};  iE6=window.ActiveXObject&&!window.XMLHttpRequest;  if(!iE6){    window.onscroll=function()     {      var s=document.body.scrollTop||document.documentElement.scrollTop;      if(s>H){oDiv.className="div1 div2";if(iE6){oDiv.style.top=(s-H)+"px";}}      else{oDiv.className="div1";}    };  }})();

HTML代码:

<div id="box">  <div id="float" class="div1">    //随滚动移动的部分代码  </div></div>

CSS代码:

#box{float:left;position:relative;width:295px;}.div1{}.div2{position:fixed;_position:absolute;top:3px;z-index:295;}

希望本文所述对大家JavaScript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表