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 相关文章推荐
原生Aajax 和jQuery Ajax 写法个人总结
Mar 24 jQuery
关于jQuery里prev()的简单操作代码
Oct 27 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
JS/jQuery实现DIV延时几秒后消失或显示的方法
Feb 12 jQuery
手写简单的jQuery雪花飘落效果实例
Apr 22 jQuery
jQuery超简单遮罩层实现方法示例
Sep 06 jQuery
jQuery+PHP实现上传裁剪图片
Jun 29 jQuery
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
jQuery实现的简单歌词滚动功能示例
Jan 07 jQuery
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 jQuery
jquery多级树形下拉菜单的实例代码
Jul 09 jQuery
jQuery实现容器间的元素拖拽功能
Dec 01 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去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
2017/06/19 PHP
Yii框架常见缓存应用实例小结
2019/09/09 PHP
js 面向对象的技术创建高级 Web 应用程序
2010/02/25 Javascript
javascript使用eval或者new Function进行语法检查
2010/10/16 Javascript
项目中常用的JS方法整理
2015/01/30 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
vuejs指令详解
2017/02/07 Javascript
详谈js中window.location.search的用法和作用
2017/02/13 Javascript
jquery实现图片平滑滚动详解
2017/03/22 jQuery
vue+axios实现post文件下载
2019/09/25 Javascript
浅谈Layui的eleTree树式选择器使用方法
2019/09/25 Javascript
Vue基础配置讲解
2019/11/29 Javascript
JS实现多选框的操作
2020/06/24 Javascript
JS实现斐波那契数列的五种方式(小结)
2020/09/09 Javascript
跟老齐学Python之让人欢喜让人忧的迭代
2014/10/02 Python
10种检测Python程序运行时间、CPU和内存占用的方法
2015/04/01 Python
Python用Pillow(PIL)进行简单的图像操作方法
2017/07/07 Python
Python 爬取携程所有机票的实例代码
2018/06/11 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
Python后台开发Django会话控制的实现
2019/04/15 Python
HTML5实现直播间评论滚动效果的代码
2020/05/27 HTML / CSS
经济管理专业毕业生推荐信
2013/11/11 职场文书
优质服务演讲稿
2014/05/14 职场文书
十佳文明家庭事迹
2014/05/25 职场文书
顶岗实习计划书
2015/01/16 职场文书
入伍通知书
2015/04/23 职场文书
保留意见审计报告
2015/06/05 职场文书
运动会100米加油稿
2015/07/21 职场文书
幼儿园中班班级总结
2015/08/10 职场文书
导游词之南迦巴瓦峰
2019/11/19 职场文书
MySQL存储过程及语法详解
2022/08/05 MySQL