js实现4个方向滚动的球


Posted in Javascript onMarch 06, 2017

效果图:

js实现4个方向滚动的球

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 <style>
 *{
 margin: 0;
 padding: 0;
 }
 #wrap{
 width: 800px;
 height: 500px;
 border: 1px solid deeppink;
 margin-left: 10px;
 margin-top: 5px;
 float: left;
 }
 #input1{
 width: 80px;
 margin: 5px auto 5px 10px;
 font-size: 0;
 float: left;
 }
 #div1{
 width: 100px;
 height: 100px;
 background: hotpink;
 position: absolute;
 top: 20px;
 left: 30px;
 border-radius: 100px;
 box-shadow: 0px 5px 5px rgba(0,0,0,.5);
 }
 input{
 width: 100px;
 height: 40px;
 line-height: 40px;
 text-align: center;
 font-size: 18px;
 display: block;
 background: palegreen;
 margin-bottom: 5px;
 }
 </style>
 </head>
 <body>
 <div id="wrap">
 <div id="div1"></div>
 </div>
 <div id="input1">
 <input type="button" value="向左" id="btn2" />
 <input type="button" value="向右" id="btn1"/>
 <input type="button" value="向上" id="btn3" />
 <input type="button" value="向下" id="btn4"/>
 </div>
 <script>
 var oBtn=document.getElementById('btn1');
 var oDiv=document.getElementById('div1');
 var oBtn2=document.getElementById('btn2');
 var oBtn3=document.getElementById('btn3');
 var oBtn4=document.getElementById('btn4');
 oBtn4.onclick=function(){
 move(oDiv,10,380,'0px 5px 5px rgba(0,0,0,.5)','top');
 }
 oBtn3.onclick=function(){
 move(oDiv,-10,30,'0px -5px 5px rgba(0,0,0,.5)','top');
 }
 oBtn2.onclick=function(){
 move(oDiv,-10,40,'-5px 5px 5px rgba(0,0,0,.5)','left');
 }
 oBtn.onclick=function(){
 move(oDiv,10,680,'5px 5px 5px rgba(0,0,0,.5)','left');
 }
 function move(obj,val,target,bs,dir){
 obj.style.boxShadow=bs;
 clearInterval(obj.timer);
 obj.timer=setInterval(function(){
  var speed=parseInt(getStyle(obj,dir))+val;
  if(speed>=target&&val>0){
  speed=target;
  } 
  if(speed<=target&&val<0){
  speed=target
  }
  obj.style[dir]=speed+'px';
  if(speed==target){
  clearInterval(obj.timer);
  }
 },30);
 }
 function getStyle(obj,sty){
 return obj.currentStyle?obj.currentStyle[sty]:getComputedStyle(obj)[sty];
 }
 </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
javascript在事件监听方面的兼容性小结
Apr 07 Javascript
一个简单的JavaScript数据缓存系统实现代码
Oct 24 Javascript
浅谈javascript中createElement事件
Dec 05 Javascript
JQuery动画与特效实例分析
Feb 02 Javascript
jQuery与getJson结合的用法实例
Aug 07 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
Dec 13 Javascript
基于jquery实现三级下拉菜单
May 10 Javascript
angular.js之路由的选择方法
Sep 24 Javascript
node下使用UglifyJS压缩合并JS文件的方法
Mar 07 Javascript
JS判断两个数组或对象是否相同的方法示例
Feb 28 Javascript
详解webpack-dev-middleware 源码解读
Mar 23 Javascript
JavaScript实现拖动对话框效果的实现代码
Oct 12 Javascript
Bootstrap输入框组件简单实现代码
Mar 06 #Javascript
原生JS实现圣旨卷轴展开效果
Mar 06 #Javascript
js中setTimeout的妙用--防止循环超时
Mar 06 #Javascript
Bootstrap表单简单实现代码
Mar 06 #Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
Mar 06 #Javascript
Js自动截取字符串长度,添加省略号(……)的实现方法
Mar 06 #Javascript
Bootstrap显示与隐藏简单实现代码
Mar 06 #Javascript
You might like
需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
2008/05/26 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
php读取csc文件并输出
2015/05/21 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
php实现的mysqldb读写分离操作类示例
2017/02/07 PHP
js中有关IE版本检测
2012/01/04 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
BootStrap中的表单大全
2016/09/07 Javascript
JS实现搜索框文字可删除功能
2016/12/28 Javascript
ES6新特性八:async函数用法实例详解
2017/04/21 Javascript
JavaScript设计模式之工厂模式和抽象工厂模式定义与用法分析
2018/07/26 Javascript
vue-swiper的使用教程
2018/08/30 Javascript
KOA+egg.js集成kafka消息队列的示例
2018/11/09 Javascript
微信运维交互机器人的示例代码
2018/11/12 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
2020/07/28 Javascript
[01:18]PWL开团时刻DAY10——一拳超人
2020/11/11 DOTA
Python3.x版本中新的字符串格式化方法
2015/04/24 Python
Python素数检测的方法
2015/05/11 Python
利用Python读取文件的四种不同方法比对
2017/05/18 Python
Anaconda多环境多版本python配置操作方法
2017/09/12 Python
django启动uwsgi报错的解决方法
2018/04/08 Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
2019/01/30 Python
python opencv 图像拼接的实现方法
2019/06/27 Python
tensorflow 变长序列存储实例
2020/01/20 Python
一款CSS3实现多功能下拉菜单(带分享按)的教程
2014/11/05 HTML / CSS
CSS3打造磨砂玻璃背景效果
2016/09/28 HTML / CSS
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
PHP经典面试题
2016/09/03 面试题
2014年扫黄打非工作总结
2014/12/03 职场文书
2015年度个人思想工作总结
2015/04/08 职场文书
公司保洁员管理制度
2015/08/04 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
python基础之停用词过滤详解
2021/04/21 Python