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 相关文章推荐
表单内同名元素的控制
Nov 22 Javascript
详解 javascript中offsetleft属性的用法
Nov 11 Javascript
整理Javascript函数学习笔记
Dec 01 Javascript
AngularJs 动态加载模块和依赖
Sep 15 Javascript
微信小程序 实现拖拽事件监听实例详解
Nov 16 Javascript
基于JS对象创建常用方式及原理分析
Jun 28 Javascript
详解webpack编译多页面vue项目的配置问题
Dec 11 Javascript
js实现HTML中Select二级联动的实例
Jan 05 Javascript
JS严格模式知识点总结
Feb 27 Javascript
layer插件select选中默认值的方法
Aug 14 Javascript
Vue中保存数据到磁盘文件的方法
Sep 06 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
Mar 07 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 Session变量不能传送到下一页的解决方法
2009/11/27 PHP
深入理解PHP原理之异常机制
2010/08/21 PHP
php实现指定字符串中查找子字符串的方法
2015/03/17 PHP
使用TextRange获取输入框中光标的位置的代码
2007/03/08 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
Javascript设置对象的ReadOnly属性(示例代码)
2013/12/25 Javascript
javascript数组操作方法小结和3个属性详细介绍
2014/07/05 Javascript
js实现分享到随页面滚动而滑动效果的方法
2015/04/10 Javascript
轻松实现javascript数据双向绑定
2015/11/11 Javascript
js实现将选中内容分享到新浪或腾讯微博
2015/12/16 Javascript
bootstrap下拉菜单使用方法解析
2017/01/13 Javascript
jQuery设计思想
2017/03/07 Javascript
JavaScript实现跟随滚动缓冲运动广告框
2017/07/15 Javascript
Vue 2.0入门基础知识之内部指令详解
2017/10/15 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
vue cli使用融云实现聊天功能的实例代码
2019/04/19 Javascript
vue+element实现打印页面功能
2019/05/20 Javascript
[01:38]女王驾到——至宝魔廷新尊技能&特效展示
2020/06/16 DOTA
[01:08:43]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第一场 1月9日
2021/03/11 DOTA
python语言使用技巧分享
2016/05/31 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python中使用支持向量机SVM实践
2017/12/27 Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
2018/06/13 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
2019/01/30 Python
python中hasattr()、getattr()、setattr()函数的使用
2019/08/16 Python
python针对mysql数据库的连接、查询、更新、删除操作示例
2019/09/11 Python
使用python制作一个解压缩软件
2019/11/13 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
2020/05/20 Python
PyTorch: Softmax多分类实战操作
2020/07/07 Python
HTML5调用手机摄像头拍照的实现思路及代码
2014/06/15 HTML / CSS
工艺员岗位职责
2014/02/11 职场文书
建筑公司员工自我鉴定
2014/04/08 职场文书
捐款倡议书格式范文
2014/05/14 职场文书
优秀校长事迹材料
2014/12/24 职场文书
工作态度怎么写
2015/06/25 职场文书