jQuery实现碰到边缘反弹的动画效果


Posted in jQuery onFebruary 24, 2018

先上效果图:

jQuery实现碰到边缘反弹的动画效果

录出来有点卡顿的赶脚,实际上还是挺顺畅的。

1.HTML:

<div class="box"></div>

2.CSS:

body{
   background:skyblue  
}
.box{
  position: absolute;
  top: 10px;
  left: 10px;
  width: 100px;
  height: 100px;
  background: white;
}

3.JS:

$(function(){
  var obj=$(".box");
  var x=obj.offset().left;//盒子距离左部的位置
  var y=obj.offset().top;//盒子距离顶部的位置
  var objwid=obj.width();//盒子的宽
  var objhei=obj.height();
  var winwid=$(window).width();//页面的宽
  var winhei=$(window).height();
  var max=10;//设置最大视觉差,就是感觉这个距离刚好碰到
  var winx=winwid-objwid-max;//盒子x轴最远达到的距离
  var winy=winhei-objhei-max;//盒子y轴最远达到的距离
  var sx=0;//x轴是否返回的状态,0是值++即正向移动,1是值--即返回
  var sy=0;
  time1=setInterval(function(){
    if(sx==0){
      obj.css("left",x++);
    }else if(sx==1){
      obj.css("left",x--);
    }
    if(x<=0){
      sx=0;
    }else if(x>=winx){
      sx=1;
    }
    if(sy==0){
      obj.css("top",y++);
    }else if(sy==1){
      obj.css("top",y--);
    }
    if(y<=0){
      sy=0;
    }else if(y>=winy){
      sy=1;
    }
  },1)
})

这里只是简单的效果,由此可引发多个问题:

1)如果多个方块出现,页面会不会卡顿呢?

2)如果要实现多个方块碰撞之后改变运动的位置,这个怎么做呢?

3)方块的初始位置能不能随机呢?

4)多个方块的速度怎样设置不一样呢

5)能不能做一个弹方块的小游戏?

总结

以上所述是小编给大家介绍的jQuery实现碰到边缘反弹的动画效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
JQuery实现图片轮播效果
May 08 jQuery
jQuery实现键盘回车搜索功能
Jul 25 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
如何快速解决JS或Jquery ajax异步跨域的问题
Jan 08 jQuery
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
Jan 25 jQuery
jQuery实现碰到边缘反弹的动画效果
Feb 24 jQuery
关于jquery layui弹出层的使用方法
Apr 21 jQuery
Vue引入jquery实现平滑滚动到指定位置
May 09 jQuery
jQuery实现的简单拖拽功能示例【测试可用】
Aug 14 jQuery
Javascript和jquery在selenium的使用过程
Oct 31 jQuery
jQuery实现颜色打字机的完整代码
Mar 19 jQuery
jQuery 改变P标签文本值方法
Feb 24 #jQuery
jQuery实现标签子元素的添加和赋值方法
Feb 24 #jQuery
jquery 给动态生成的标签绑定事件的几种方法总结
Feb 24 #jQuery
jquery动态添加带有样式的HTML标签元素方法
Feb 24 #jQuery
jQuery动态添加li标签并添加属性和绑定事件方法
Feb 24 #jQuery
vue.js2.0点击获取自己的属性和jquery方法
Feb 23 #jQuery
实现jquery放大镜的两种方法
Feb 22 #jQuery
You might like
php stripslashes和addslashes的区别
2014/02/03 PHP
PHP+Mysql实现多关键字与多字段生成SQL语句的函数
2014/11/05 PHP
Yii框架form表单用法实例
2014/12/04 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
PHP经典算法集锦【经典收藏】
2016/09/14 PHP
PHP实现对xml的增删改查操作案例分析
2017/05/19 PHP
tp5(thinkPHP5)框架连接数据库的方法示例
2018/12/24 PHP
Javascript浮点数乘积运算出现多位小数的解决方法
2014/02/17 Javascript
jQuery实现鼠标滚轮动态改变样式或效果
2015/01/05 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
2016/07/01 Javascript
基于JavaScript实现图片连播和联级菜单实例代码
2017/07/28 Javascript
简单实现jQuery轮播效果
2017/08/18 jQuery
原生javascript实现的全屏滚动功能示例
2017/09/19 Javascript
vue的三种图片引入方式代码实例
2019/11/19 Javascript
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
Python基于hashlib模块的文件MD5一致性加密验证示例
2018/02/10 Python
详解python中sort排序使用
2019/03/23 Python
Python3.5多进程原理与用法实例分析
2019/04/05 Python
Python 3 判断2个字典相同
2019/08/06 Python
python用线性回归预测股票价格的实现代码
2019/09/04 Python
在python3中使用shuffle函数要注意的地方
2020/02/28 Python
Python 实现一个计时器
2020/07/28 Python
惠普新加坡官方商店:HP Singapore
2020/04/17 全球购物
给物业的表扬信
2014/01/21 职场文书
英语国培研修感言
2014/02/13 职场文书
《童年》教学反思
2014/02/18 职场文书
保密协议书范本
2014/04/22 职场文书
讲解员培训方案
2014/05/04 职场文书
环保专项行动方案
2014/05/12 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
办公经费申请报告
2015/05/15 职场文书
初婚未育证明样本
2015/06/18 职场文书
八一建军节主持词
2015/07/01 职场文书
交通安全温馨提示语
2015/07/14 职场文书
2019职场单身人才调研报告:互联网行业单身比例最高
2019/08/07 职场文书