js实现简单的碰壁反弹效果


Posted in Javascript onAugust 30, 2016

本文实例可以使用js来实现简单的碰壁反弹效果,具体的内容请大家参考代码部分。 

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>碰撞小球</title>
 <style>
 #box{
  width: 1000px;
  height: 800px;
  position: relative;
  border:1px solid red;
  margin:50px auto 0;
 }
 #boll{
  width: 50px;
  height: 50px;
/*  border-radius: 25px;*/
  border:1px solid green;
  position: absolute;
  top: 66px;
  left: 88px;
 }
 </style>
</head>
<body>
 <div id="box">
  <div id="boll"></div>
 </div>
 <script>
  var box=document.getElementById('box');
  var boll=document.getElementById('boll');
  var x=88,y=66,timer1=null,movex=1,movey=1;
  console.log(box.clientWidth-boll.clientWidth);
  console.log(box.clientWidth-boll.offsetWidth);
   timer1=setInterval(function(){
    if (movex) {//判断方向
     x++;
     if (x>=box.clientWidth-boll.clientWidth) {
      movex=0;
     }boll.style.left=x+'px';}
     else{
      x--;
      if (x<=0) {
       movex=1;
      }boll.style.left=x+'px';
     }
    if (movey) {
     y++;
     
     if (y>=box.clientHeight-boll.clientHeight) {
      movey=0;
     }boll.style.top=y+'px';
    }else{
      y--;
      if (y<=0) {
       movey=1;
      }boll.style.top=y+'px';
     }
   },1)
 </script>
</body>
</html>

其中movex和movey两个变量是判断运动的方向。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
推荐dojo学习笔记
Mar 24 Javascript
JavaScript动态插入script的基本思路及实现函数
Nov 11 Javascript
JavaScript cookie的设置获取删除详解
Feb 11 Javascript
javaScript的函数对象的声明详解
Feb 06 Javascript
JavaScript父子窗体间的调用方法
Mar 31 Javascript
js仿百度登录页实现拖动窗口效果
Mar 11 Javascript
深入分析node.js的异步API和其局限性
Sep 05 Javascript
jQuery EasyUI封装简化操作
Sep 18 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
Sep 27 Javascript
详解VueRouter进阶之导航钩子和路由元信息
Sep 13 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
Sep 12 Javascript
vue实现学生信息管理系统
May 30 Javascript
js控住DOM实现发布微博效果
Aug 30 #Javascript
AngularJS动态生成div的ID源码解析
Aug 29 #Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
Aug 29 #Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
Aug 29 #Javascript
浅谈JSON.stringify()和JOSN.parse()方法的不同
Aug 29 #Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
Aug 29 #Javascript
对js中回调函数的一些看法
Aug 29 #Javascript
You might like
支持oicq头像的留言簿(一)
2006/10/09 PHP
Laravel 5框架学习之Eloquent (laravel 的ORM)
2015/04/08 PHP
PHP的伪随机数与真随机数详解
2015/05/27 PHP
Yii2设置默认控制器的两种方法
2017/05/19 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
2019/10/12 PHP
javascript的键盘控制事件说明
2008/04/15 Javascript
Javascript 继承机制的实现
2009/08/12 Javascript
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
javaScript(JS)替换节点实现思路介绍
2013/04/17 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
2016/06/17 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
微信小程序开发之Tabbar实例详解
2017/01/09 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
jQuery is not defined 错误原因与解决方法小结
2017/03/19 Javascript
JS组件系列之JS组件封装过程详解
2017/04/28 Javascript
js实现本地图片文件拖拽效果
2017/07/18 Javascript
傻瓜式vuex语法糖kiss-vuex整理
2018/12/21 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
2018/12/29 jQuery
通过angular CDK实现页面元素拖放的步骤详解
2020/07/01 Javascript
vue3 watch和watchEffect的使用以及有哪些区别
2021/01/26 Vue.js
[50:20]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第四局
2016/03/06 DOTA
python开发简易版在线音乐播放器
2017/03/03 Python
简单易懂的python环境安装教程
2017/07/13 Python
Python多层装饰器用法实例分析
2018/02/09 Python
Python实现对特定列表进行从小到大排序操作示例
2019/02/11 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
2020/01/15 Python
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
德国孕妇装和婴童服装网上商店:bellybutton
2018/04/12 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
中间件的定义
2016/08/09 面试题
《记承天寺夜游》教学反思
2014/02/16 职场文书
求职意向书
2014/07/29 职场文书
压缩Redis里的字符串大对象操作
2021/06/23 Redis
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis