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


Posted in Javascript onDecember 24, 2015

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
列表内容的选择
Jun 30 Javascript
jquery入门—数据删除与隔行变色以及图片预览
Jan 07 Javascript
深入领悟JavaScript中的面向对象
Nov 18 Javascript
Javascript改变CSS样式(局部和全局)
Dec 18 Javascript
JS回调函数的应用简单实例
Sep 17 Javascript
详解JavaScript对W3C DOM模版的支持情况
Jun 16 Javascript
JS+CSS相对定位实现的下拉菜单
Oct 06 Javascript
javascript瀑布流布局实现方法详解
Feb 17 Javascript
Javascript中 带名 匿名 箭头函数的重要区别(推荐)
Jan 29 Javascript
Angularjs在360兼容模式下取数据缓存问题的解决办法
Jun 22 Javascript
jQuery模拟爆炸倒计时功能实例代码
Aug 21 jQuery
[js高手之路]寄生组合式继承的优势详解
Aug 28 Javascript
jQuery中hover与mouseover和mouseout的区别分析
Dec 24 #Javascript
基于JS2Image实现圣诞树代码
Dec 24 #Javascript
jquery读写cookie操作实例分析
Dec 24 #Javascript
jquery.cookie实现的客户端购物车操作实例
Dec 24 #Javascript
jQuery基于cookie实现的购物车实例分析
Dec 24 #Javascript
jQuery实现网页顶部固定导航效果代码
Dec 24 #Javascript
jQuery的选择器中的通配符[id^='code']或[name^='code']及jquery选择器总结
Dec 24 #Javascript
You might like
PHP数据库操作面向对象的优点
2006/10/09 PHP
完美解决dedecms中的[html][/html]和[code][/code]问题
2007/03/20 PHP
PHP操作MongoDB GridFS 存储文件的详解
2013/06/20 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2007/02/15 Javascript
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
2010/11/28 Javascript
jquery 单击li防止重复加载的实现代码
2010/12/24 Javascript
javascript string字符串优化问题
2011/07/31 Javascript
JavaScript高级程序设计 读书笔记之八 Function类及闭包
2012/02/27 Javascript
jQuery图片轮播滚动切换代码分享
2020/04/20 Javascript
canvas时钟效果
2017/02/16 Javascript
利用forever和pm2部署node.js项目过程
2017/05/10 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
解决Layui 表单提交数据为空的问题
2018/08/15 Javascript
JavaScript解析及序列化JSON的方法实例分析
2019/01/04 Javascript
使用JavaScript保存文本文件到本地的两种方法
2019/01/22 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
2019/11/09 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
javascript数组元素删除方法delete和splice解析
2019/12/09 Javascript
[59:00]OG vs TNC 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
[32:36]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第二场 12.12
2020/12/16 DOTA
Python基于动态规划算法计算单词距离
2015/07/25 Python
Python中的多行注释文档编写风格汇总
2016/06/16 Python
PyQt5实现类似别踩白块游戏
2019/01/24 Python
Python3实现的回文数判断及罗马数字转整数算法示例
2019/03/27 Python
python实现发送form-data数据的方法详解
2019/09/27 Python
python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例
2020/03/01 Python
Django CBV模型源码运行流程详解
2020/08/17 Python
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
Koral官方网站:女性时尚运动服
2019/04/10 全球购物
公积金转移接收函
2014/01/11 职场文书
优秀实习生感言
2014/03/01 职场文书
承诺书格式范文
2014/06/03 职场文书
党员干部廉政承诺书
2015/04/28 职场文书
Jsonp劫持学习
2021/04/01 PHP