JS运动框架之分享侧边栏动画实例


Posted in Javascript onMarch 03, 2015

本文实例讲述了JS运动框架之分享侧边栏动画实现方法。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html>  

<html>  

    <head>  

        <meta charset="utf-8">  

        <title></title>  

        <style type="text/css">  

        *{  

            margin:0px;  

            padding:0px;  

        }  

            #div1{  

                width:319px;  

                height: 340px;  

                border: 1px solid #FFF;  

                position: absolute;  

                top:100px;  

                left:-320px;  

                background-image: url(images/1.png);  

                background-repeat:no-repeat ;  

            }  

            #div1 span{  

                width:30px;  

                height: 130px;  

                border: 1px solid blue;  

                position: absolute;  

                right:-23px;  

                top:95px;  

                background: red;  

                font-family: "微软雅黑";  

                color: #FFFFFF;  

                text-align: center;  

                line-height: 40px;  

                border-radius: 0px 200px 200px 0px;  

            }  

        </style>  

        <script type="text/javascript">  

            window.onload=function(){  

                var oDiv=document.getElementById("div1");  

                var oSpan=oDiv.getElementsByTagName('span')[0];  

                var time=null;  

                var speed=8;  

                oDiv.onmouseover=function(){//这里给整个div加鼠标移入的事件  

                    clearInterval(time);  

                    time=setInterval(function(){  

                        if(oDiv.offsetLeft>=0){clearInterval(time);}  

                        else{  

                            oDiv.style.left=oDiv.offsetLeft+speed+'px';  

                        }  

                    },1);  

                }  

                oDiv.onmouseout=function(){//这里给整个div加鼠标移出事件

                    clearInterval(time);  

                    time=setInterval(function(){  

                        if(oDiv.offsetLeft<=-320){clearInterval(time);}  

                        else{  

                            oDiv.style.left=oDiv.offsetLeft-speed+'px';  

                        }  

                    },1);  

                }  

            }  

        </script>  

    </head>  

    <body>  

        <div id="div1">  

            <span>分享到</span>  

        </div>  

    </body>  

</html>

优化后的代码:
<!DOCTYPE html>  

<html>  

    <head>  

        <meta charset="utf-8">  

        <title></title>  

        <style type="text/css">  

        *{  

            margin:0px;  

            padding:0px;  

        }  

            #div1{  

                width:319px;  

                height: 340px;  

                border: 1px solid #FFF;  

                position: absolute;  

                top:100px;  

                left:-320px;  

                background-image: url(images/1.png);  

                background-repeat:no-repeat ;  

            }  

            #div1 span{  

                width:30px;  

                height: 130px;  

                border: 1px solid blue;  

                position: absolute;  

                right:-23px;  

                top:95px;  

                background: red;  

                font-family: "微软雅黑";  

                color: #FFFFFF;  

                text-align: center;  

                line-height: 40px;  

                border-radius: 0px 200px 200px 0px;  

            }  

        </style>  

        <script type="text/javascript">  

            window.onload=function(){  

                var oDiv=document.getElementById("div1");  

                var oSpan=oDiv.getElementsByTagName('span')[0];  

                var time=null;  

                var spe=8;  

                var speed=null;  

                function move(bord){  

                    clearInterval(time);  

                    time=setInterval(function(){  

                        if(oDiv.offsetLeft>bord){speed=-spe;}  

                        else{speed=spe;}  

                        if(oDiv.offsetLeft==bord){clearInterval(time);}  

                        else{  

                            oDiv.style.left=oDiv.offsetLeft+speed+'px';  

                          }  

                    },1);  

                }  

                oDiv.onmouseover=function(){//这里给整个div加鼠标移入的事件

                    move(0);  

                }  

                oDiv.onmouseout=function(){//这里给整个div加鼠标移出事件

                    move(-320);  

                }  

            }  

        </script>  

    </head>  

    <body>  

        <div id="div1">  

            <span>分享到</span>  

        </div>  

    </body>  

</html>

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

Javascript 相关文章推荐
js中根据字数截取字符串,不能截断url
Jan 12 Javascript
用js替换除数字与逗号以外的所有字符的代码
Jun 07 Javascript
js使用循环清空某个div中的input标签值
Sep 29 Javascript
JavaScript中的this到底是什么(一)
Dec 09 Javascript
angularjs中的$eval方法详解
Apr 24 Javascript
微信小程序中hidden不生效原因的解决办法
Apr 26 Javascript
JavaScript函数表达式详解及实例
May 05 Javascript
Vue + better-scroll 实现移动端字母索引导航功能
May 07 Javascript
vue+iview/elementUi实现城市多选
Mar 28 Javascript
element-ui table组件如何使用render属性的实现
Nov 04 Javascript
用JS实现选项卡
Mar 23 Javascript
Vue页面渲染中key的应用实例教程
Jan 12 Vue.js
jQuery DOM删除节点操作指南
Mar 03 #Javascript
JS实现表格数据各种搜索功能的方法
Mar 03 #Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 #Javascript
javascript验证身份证号
Mar 03 #Javascript
JS烟花背景效果实现方法
Mar 03 #Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
Mar 03 #Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
Mar 03 #Javascript
You might like
自动分页的不完整解决方案
2007/01/12 PHP
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
2011/11/10 PHP
关于crontab的使用详解
2013/06/24 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
PHP常用数组函数介绍
2014/07/28 PHP
php查找字符串出现次数的方法
2014/12/01 PHP
Javascript实例教程(19) 使用HoTMetal(7)
2006/12/23 Javascript
用jscript启动sqlserver
2007/06/21 Javascript
JS生成不重复随机数组的函数代码
2014/06/10 Javascript
轻松理解Javascript变量的相关问题
2017/01/20 Javascript
JavaScript定时器制作弹窗小广告
2017/02/05 Javascript
基于vue.js轮播组件vue-awesome-swiper实现轮播图
2017/03/17 Javascript
JS+HTML5 FileReader对象用法示例
2017/04/07 Javascript
详解webpack4升级指南以及从webpack3.x迁移
2018/06/12 Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
2018/11/21 Javascript
vue实现标签云效果的方法详解
2019/08/28 Javascript
p5.js实现动态图形临摹
2019/10/23 Javascript
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
2014/06/04 Python
python使用chardet判断字符串编码的方法
2015/03/13 Python
Python使用微信SDK实现的微信支付功能示例
2017/06/30 Python
初学python的操作难点总结(新手必看篇)
2017/08/03 Python
Python中一行和多行import模块问题
2018/04/01 Python
Django使用paginator插件实现翻页功能的实例
2018/10/24 Python
Django框架模板介绍
2019/01/15 Python
Python实现二叉树的最小深度的两种方法
2019/09/30 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
Pytorch自己加载单通道图片用作数据集训练的实例
2020/01/18 Python
Python 跨.py文件调用自定义函数说明
2020/06/01 Python
html5的canvas方法使用指南
2014/12/15 HTML / CSS
英国地毯卖家:The Rug Seller
2019/07/18 全球购物
给同学的道歉信
2014/01/16 职场文书
学习与创新自我评价
2015/03/09 职场文书
MySQL的安装与配置详细教程
2021/06/26 MySQL
一级电子管军用接收机测评
2022/04/05 无线电
微软官方消息,在 2023 年 4 月 11 日之后微软将不再为 Office 2013 和 Skype for Business 2015 提供安全更新
2022/04/21 数码科技