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中的常见排序算法
Mar 27 Javascript
json的前台操作和后台操作实现代码
Jan 20 Javascript
只需一行代码,轻松实现一个在线编辑器
Nov 12 Javascript
jQuery简易图片放大特效示例代码
Jun 09 Javascript
js与jquery正则验证电子邮箱、手机号、邮政编码的方法
Jul 04 Javascript
详解vue之页面缓存问题(基于2.0)
Jan 10 Javascript
详解vue中localStorage的使用方法
Nov 22 Javascript
微信小程序当前时间时段选择器插件使用方法详解
Dec 28 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
Apr 04 Javascript
javascript事件循环event loop的简单模型解释与应用分析
Mar 14 Javascript
微信小程序调用wx.getImageInfo遇到的坑解决
May 31 Javascript
返回上一个url并刷新界面的js代码
Sep 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
乱谈我对耳机、音箱的感受
2021/03/02 无线电
require(),include(),require_once()和include_once()的异同
2007/01/02 PHP
php 无限级数据JSON格式及JS解析
2010/07/17 PHP
发款php蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
PHP Directory 函数的详解
2013/03/07 PHP
如何使用FireFox插件FirePHP调试PHP
2013/07/23 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
2015/11/05 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
PHP实现防止表单重复提交功能【基于token验证】
2018/05/24 PHP
js AspxButton的客户端操作
2009/06/26 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
2013/10/25 Javascript
javascript页面上使用动态时间具体实现
2014/03/18 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
javascript实现tab响应式切换特效
2016/01/29 Javascript
bootstrap table实现双击可编辑、添加、删除行功能
2017/09/27 Javascript
微信小程序 按钮滑动的实现方法
2017/09/27 Javascript
javaScript动态添加Li元素的实例
2018/02/24 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
Vue-Router的使用方法
2018/09/05 Javascript
js实现json数组分组合并操作示例
2019/02/12 Javascript
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
js实现简易ATM功能
2020/10/27 Javascript
Python从MP3文件获取id3的方法
2015/06/15 Python
Python使用tablib生成excel文件的简单实现方法
2016/03/16 Python
详解Python nose单元测试框架的安装与使用
2017/12/20 Python
python模块导入的细节详解
2018/12/10 Python
在Pycharm中自动添加时间日期作者等信息的方法
2019/01/16 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
2020/04/07 Python
Html5踩坑记之mandMobile使用小记
2020/04/02 HTML / CSS
Vrbo英国:预订度假屋
2020/08/19 全球购物
毕业设计说明书
2014/05/07 职场文书
2015年领班工作总结
2015/04/29 职场文书
学校艾滋病宣传活动总结
2015/05/09 职场文书
师德师风心得体会(2016精选篇)
2016/01/12 职场文书
教你用eclipse连接mysql数据库
2021/04/22 MySQL
如何开发一个渐进式Web应用程序PWA
2021/05/10 Javascript