JS实现侧悬浮浮动实例代码


Posted in Javascript onNovember 29, 2013

效果:

JS实现侧悬浮浮动实例代码

思路:

首先,加载onscroll控制滚动条。然后写缓存运动的方法,缓冲运动的方法是先计算出DIV缓冲的速度,并且将其取整,再进行运动判断什么时候到达终点。最后将其参数返回。再在onscroll里面调用此方法,并且将终点计算出来赋予此方法的参数。

代码:

<head runat="server">
    <title></title>
    <style type="text/css">
        #div1
        {
            width: 200px;
            height: 200px;
            background: #0000FF;
            position: absolute;
            right: 0;
            bottom: 0;
        }
    </style>
    <script type="text/javascript">
        window.onscroll = function () {
            var oDiv = document.getElementById('div1');
            var DivScroll = document.documentElement.scrollTop || document.body.scrollTop;      //获取移动高度
            //                        oDiv.style.top = (document.documentElement.clientHeight - oDiv.offsetHeight)/2 + DivScroll + 'px';
            move(parseInt((document.documentElement.clientHeight - oDiv.offsetHeight) / 2 + DivScroll));    //调用传参,其中里面的参数是DIV要走的终点。也就是(可视高度-DIV高度)/2+移动高度
        };
        var timer = null;
        function move(end) {
            clearInterval(timer);       //首先,先关闭之前如果有开启的setInterval;
            timer = setInterval(function () {       
                var oDiv = document.getElementById('div1');
                var speed = (end - oDiv.offsetTop) / 5;     //计算DIV要走的速度,DIV要走的速度就等于(终点-offsetTop高度)/缩放系数
                speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);       //为了避免小数,将其取整
                if (oDiv.offsetTop == end) {        //当DIV到达终点,则关闭setInterval;
                    clearInterval(timer);
                }
                else {
                    oDiv.style.top = oDiv.offsetTop + speed + 'px';     //移动div
                }
            }, 30);
        }
    </script>
</head>
<body style="height: 1000px;">
    <div id="div1">
    </div>
</body>
Javascript 相关文章推荐
jQuery $.get 的妙用 访问本地文本文件
Jul 12 Javascript
jquery中子元素和后代元素的区别示例介绍
Apr 02 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
Nov 30 Javascript
JavaScript Math 对象常用方法总结
Apr 28 Javascript
JavaScript必知必会(九)function 说起 闭包问题
Jun 08 Javascript
KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机的方法
Oct 05 Javascript
javascript淘宝主图放大镜功能
Oct 20 Javascript
简单实现AngularJS轮播图效果
Apr 10 Javascript
详解webpack require.ensure与require AMD的区别
Dec 13 Javascript
webpack中如何使用雪碧图的示例代码
Nov 11 Javascript
微信小程序 网络通信实现详解
Jul 23 Javascript
jQuery操作动画完整实例分析
Jan 10 jQuery
js模拟点击以提交表单为例兼容主流浏览器
Nov 29 #Javascript
JS实现日期加减的方法
Nov 29 #Javascript
js弹出层永远居中实现思路及代码
Nov 29 #Javascript
根据表格中的某一列进行排序的javascript代码
Nov 29 #Javascript
JS取文本框中最小值的简单实例
Nov 29 #Javascript
js中的eventType事件及其浏览器支持性介绍
Nov 29 #Javascript
js简单实现根据身份证号码识别性别年龄生日
Nov 29 #Javascript
You might like
用PHP读注册表
2006/10/09 PHP
PHP分页函数代码(简单实用型)
2010/12/02 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
2013/06/03 PHP
查找php配置文件php.ini所在路径的二种方法
2014/05/26 PHP
PHP常量使用的几个需要注意的地方(谨慎使用PHP中的常量)
2014/09/12 PHP
PHP实现获取中英文首字母
2015/06/19 PHP
php类自动装载、链式操作、魔术方法实现代码
2017/07/23 PHP
javascript代码加载优化方法
2011/01/30 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
10个基于浏览器的JavaScript调试工具分享
2013/02/07 Javascript
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
js获取元素到文档区域document的(横向、纵向)坐标的两种方法
2013/05/17 Javascript
浅析JS刷新框架中的其他页面 &amp;&amp; JS刷新窗口方法汇总
2013/07/08 Javascript
JavaScript验证图片类型(扩展名)的函数分享
2014/05/05 Javascript
JavaScript设置表单上传时文件个数的方法
2015/08/11 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
通用javascript代码判断版本号是否在版本范围之间
2015/11/29 Javascript
jQuery 局部div刷新和全局刷新方法总结
2016/10/05 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
为JQuery EasyUI 表单组件增加焦点切换功能的方法
2017/04/13 jQuery
vue使用element-ui的el-input监听不了回车事件的解决方法
2018/01/12 Javascript
Node.JS段点续传:Nginx配置文件分段下载功能的实现方法
2018/03/12 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
netbeans7安装python插件的方法图解
2013/12/24 Python
python爬虫 2019中国好声音评论爬取过程解析
2019/08/26 Python
matplotlib实现显示伪彩色图像及色度条
2019/12/07 Python
关于初始种子自动选取的区域生长实例(python+opencv)
2020/01/16 Python
flask框架url与重定向操作实例详解
2020/01/25 Python
历史专业个人求职信分享
2013/12/20 职场文书
致100米运动员广播稿
2014/02/14 职场文书
中专生自荐信
2014/06/25 职场文书
高中军训感想
2015/08/07 职场文书
2016年暑假家长对孩子评语
2015/12/01 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
MySQL 十大常用字符串函数详解
2021/06/30 MySQL