基于JavaScript实现div层跟随滚动条滑动


Posted in Javascript onJanuary 12, 2016

在一个页面放2个悬浮框,悬浮框随页面的上下滚动有上下波动的效果,最终固定在同一位置

效果展示如下所示:

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JavScript页面悬浮框- 何问起</title><base target="_blank" />
<style>
body {
height: 2000px;
}
#div1 {
width: 100px;
height: 150px;
background: red;
position: absolute;
right: 0;
top:200px;
}
#div2 {
width: 200px;
height: 200px;
background: green;
position: absolute;
left: 0;
top: 200px;
}a{color:white}
</style>
</head>
<body>
<div id="div1"><a href="http://hovertree.com">何问起</a> <a href="http://hovertree.com/texiao/">特效</a></div>
<div id="div2"><a href="http://hovertree.com/h/bjaf/mbrpxe4o.htm">原文</a>
<a href="http://hovertree.com/texiao/jsstudy/1/">效果</a>
</div>
<div id="hovertree" style="position:fixed;top:100px;left:40%;z-index:99;height:100px;width:100px;background-color:silver"></div>
<div>在一个页面放2个悬浮框,悬浮框随页面的上下滚动有上下波动的效果,最终固定在同一位置</div>
<script>
var h_div1 = document.getElementById('div1'), h_div2 = document.getElementById('div2');
var h_hvttop = 200;
window.onscroll = function () {
HoverTreeMove(h_div1, h_hvttop)
HoverTreeMove(h_div2, h_hvttop)
//显示信息
var h_scrollTop = document.documentElement.scrollTop || document.body.scrollTop;//滚动的距离
var h_hovertree = document.getElementById('hovertree'); 
h_hovertree.innerHTML = h_div1.offsetTop + " hovertree<br /> " + h_scrollTop + "<br />" + h_div1.style.top;
};
function HoverTreeMove(obj,top)
{
var h_scrollTop = document.documentElement.scrollTop || document.body.scrollTop;//滚动的距离
var h_buchang = 20;
if (obj.offsetTop < h_scrollTop + top - h_buchang)
{
obj.style.top = obj.offsetTop + h_buchang + "px";
setTimeout(function () { HoverTreeMove(obj, top); }, 80);
}
else if (obj.offsetTop > h_scrollTop + top + h_buchang)
{
obj.style.top = (obj.offsetTop - h_buchang) + "px";
setTimeout(function () { HoverTreeMove(obj, top); }, 80);
}
else {
obj.style.top = h_scrollTop + top + "px";
}
}
HoverTreeMove(h_div1, 200)
HoverTreeMove(h_div2, 200)
</script>
</body>
</html>

下面给大家分享一段代码页面顶端固定div,不随滚动条移动,提示浏览器信息

例子1:

<html>
<head>
<style type="text/css">
#topNavWrapper {
height: 29px;
margin: 0px auto;
min-width:1000px;
z-index:100;
_position: relative ;
_top:0px; 
}
#topNav 
{
width:100%;
display: block;
z-index: 100;
overflow: visible;
position: fixed;
top: 0px; 
_position: absolute;
_top: expression(documentElement.scrollTop-5 + "px");
background-color:#EBEBEB;
border-bottom-style:solid;
border-bottom-width:1px;
border-bottom-color:#D0D0D0;
height: 28px;
min-width:1000px;
}
#top
{
margin: 0px auto;
width:1000px;
position:relative;
} 
.left
{
left:5px;
top:6px;
width:200px;
position:absolute;
}
.leftlx
{
left:205px;
top:6px;
width:300px;
position:absolute;
}
.right
{
left:830px;
top:6px;
width:170px;
position:absolute;
}
#top a
{
text-decoration: none;
color:#747474;
}
#top a:hover
{
color: blue;
text-decoration: underline;
}
</style>
</head>
<body>
<div id="topNavWrapper">
<div id="topNav">
<div id="top">
<div class="left">您好!欢迎来到....^ ^</div><div class="leftlx"><a href="about.aspx?id=1">[联系我们]</a>  客户服务热线: 400-699-1111</div>
<div class="right">
<table cellpadding="0" cellspacing="0"><tr><td><a href="#">简体中文</a></td><td>|</td><td><a href="big5.html">繁体中文</a></td>
<td>|</td><td><a onclick='window.external.addFavorite("http://www.xxxx.com","xxxx")' href="#">收藏本站</a></td></tr></table>
</div>
</div>
</div>
</div>
</body>
</html>

例子2:

<style type="text/css">
{
margin: 0px;
padding: 0px;
}
body {
background-attachment: fixed; /* prevent screen flash in IE6 */
}
#topNavWrapper {
width: 100%;
text-align: left;
height: 28px;
margin: 0px auto;
z-index:100;
_position: relative ;
_top:0px;
}
#topNav {
width: 100%;
float: left;
display: block;
z-index: 100;
overflow: visible;
position: fixed;
top: 0px; /* position fixed for IE6 */
_position: absolute;
_top: expression(documentElement.scrollTop + "px");
height: 28px;
}
</style>
Javascript 相关文章推荐
JavaScript数值数组排序示例分享
May 27 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
Aug 06 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
Nov 11 Javascript
JS截取字符串实例详解
Nov 24 Javascript
JavaScript小技巧整理篇(非常全)
Jan 26 Javascript
Angularjs 动态改变title标题(兼容ios)
Dec 29 Javascript
使用jquery datatable和bootsrap创建表格实例代码
Mar 17 Javascript
深入探究angular2 UI组件之primeNG用法
Jul 26 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
Sep 03 Javascript
vue2.x 通过后端接口代理,获取qq音乐api的数据示例
Oct 30 Javascript
webpack常用构建优化策略小结
Nov 21 Javascript
vue+elementui通用弹窗的实现(新增+编辑)
Jan 07 Vue.js
JavaScript继承模式粗探
Jan 12 #Javascript
轻松实现Bootstrap图片轮播
Apr 20 #Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
Jan 12 #Javascript
学习JavaScript设计模式之策略模式
Jan 12 #Javascript
基于jQuery1.9版本如何判断浏览器版本类型
Jan 12 #Javascript
jQuery版本升级踩坑大全
Jan 12 #Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
Jan 12 #Javascript
You might like
php的header和asp中的redirect比较
2006/10/09 PHP
CodeIgniter常用知识点小结
2016/05/26 PHP
PHP缓存工具XCache安装与使用方法详解
2018/04/09 PHP
javascript 学习之旅 (1)
2009/02/05 Javascript
来自国外的30个基于jquery的Web下拉菜单
2012/06/22 Javascript
IE8提示Invalid procedure call or argument 异常的解决方法
2012/09/30 Javascript
jQuery中.live()方法的用法深入解析
2013/12/30 Javascript
javascript读取Xml文件做一个二级联动菜单示例
2014/03/17 Javascript
jQuery自带的一些常用方法总结
2014/09/03 Javascript
Jquery时间轴特效(三种不同类型)
2015/11/02 Javascript
JavaScript编写简单的计算器
2015/11/25 Javascript
jquery自适应布局的简单实例
2016/05/28 Javascript
JS实现的打字机效果完整实例
2016/06/20 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
2016/12/25 Javascript
Nodejs实现文件上传的示例代码
2017/09/26 NodeJs
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
微信小程序动态生成二维码的实现代码
2018/07/25 Javascript
一百行JS代码实现一个校验工具
2019/04/30 Javascript
npm 语义版本控制详解
2019/09/10 Javascript
Vue实现页面添加水印功能
2019/11/09 Javascript
[01:33:59]真人秀《加油 DOTA》 第六期
2014/09/09 DOTA
python数字图像处理之高级形态学处理
2018/04/27 Python
Pycharm之快速定位到某行快捷键的方法
2019/01/20 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
Keras之自定义损失(loss)函数用法说明
2020/06/10 Python
Python分类测试代码实例汇总
2020/07/23 Python
意大利大型购物中心:Oliviero.it
2017/10/19 全球购物
捷克移动配件网上商店:ProMobily.cz
2019/03/15 全球购物
Linux面试题LINUX系统类
2014/11/19 面试题
警校毕业生自我评价
2014/04/06 职场文书
节能减耗标语
2014/06/21 职场文书
2015年乡镇环保工作总结
2015/04/22 职场文书
个人求职意向书
2015/05/11 职场文书
小学教师读书笔记
2015/07/01 职场文书
2016年社区“我们的节日·中秋节”活动总结
2016/04/05 职场文书
PostgreSQL怎么创建分区表详解
2022/06/25 PostgreSQL