jq实现碰到边缘反弹的动画
先上效果图:

录出来有点卡顿的赶脚,实际上还是挺顺畅的。
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)能不能做一个弹方块的小游戏?
这些慢慢去完善吧。。。
jq实现碰到边缘反弹的动画的更多相关文章
- 基于jQ+CSS3页面滚动内容元素动画特效
今天给大家分享一款基于jQ+CSS3页面滚动内容元素动画特效.这是一款基于jQuery+CSS3实现的页面滚动代码.该实例适用于适用浏览器:360.FireFox.Chrome.Safari.Oper ...
- js 实现边缘撞击检测动画
js 实现边缘撞击检测动画 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...
- 如何用纯 CSS 创作一个小球反弹的动画
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/OwWROO 可交互视频 ...
- 前端每日实战:85# 视频演示如何用纯 CSS 创作一个小球反弹的动画
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/OwWROO 可交互视频 此视频是可 ...
- jQuery 实现网页图片动态游走,碰到边框反弹
学学jQuery,实现个小功能练练手 需要用到定时器 html代码如下 <html> <head> <title></title> <script ...
- Scratch 少儿编程之旅(四)— Scratch入门动画《小猫捉蝴蝶》(中)
本期内容概括: 了解Scratch的更多操作,用[无限循环]来更改“小猫”角色的代码: 添加[碰到边缘就反弹]积木块指令: 更改角色的旋转模式和造型,让”小猫”走路更生动: 两种[循环]语句的区别: ...
- Scratch运动模块——有趣的弹球游戏(一)
大家好!我是蓝老师,有了前几期Scratch的基础,相信大家早已摩拳擦掌,跃跃欲试了,甚至还有些小伙伴已经编写了非常不错的程序. 学习编程就是这样不断探索.主动思考.解决问题的过程. 本期内容: 课程 ...
- Scratch儿童项目式编程--接球游戏 Scratch children program programming - catching a ball
Scratch儿童项目式编程--接球游戏 Scratch children program programming - catching a ball 作者:韩梦飞沙 Author:han_meng_ ...
- Kittenblock画笔基础,移动留下痕迹的蝴蝶,图形化编程经验分享
Kittenblock画笔基础,移动留下痕迹的蝴蝶,图形化编程经验分享 跟很多学生聊过,很多学生不是不努力,只是找不到感觉.有一点不可否认,同样在一个教室上课,同样是一个老师讲授,学习效果迥然不同.关 ...
随机推荐
- HDU 5538 House Building(模拟——思维)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5538 Problem Description Have you ever played the vi ...
- 自定义alert弹框
/**************** UIAlertControllerStyleAlert *************************/ /*创建一个 可以自定义文字颜色和字体大小的IAler ...
- Oracle_group by分组查询_深入
Oracle_group by分组查询_深入 本文导读:在实际SQL应用中,经常需要进行分组聚合,即将查询对象按一定条件分组,然后对每一个组进行聚合分析. 创建分 ...
- linux服务器,svn认证失败,配置问题,防火墙等等
之前自己还真没设置过SVN,今天亲自动手,错误百出,真是够头疼的.在网上随便找了一篇文章,就按照文章介绍开始安装.怎么安装和设置我就不说了,这里主要记录遇到的问题. 1.不知道该怎么设置 svn:// ...
- PHP操作MySQL对表增加一列(一个字段)
2014-03-19 16:59 1471人阅读 评论(0) 收藏 举报 分类: MySQL(12) 对于已经建立好的数据库,在一个已经有字段的表内新加字段可用以下方法: mysql_query(&q ...
- jquery 图片自动无缝滚动
<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-e ...
- 数据库 MySQL进阶之索引
数据库的索引非常重要,基本面试数据库的问题都在索引上,所以这里小编整理出来,一方面为了自己复习,一方面也方便大家. 一,索引前传 在了解数据库索引之前,首先有必要了解一下数据库索引的数据结构基础,那么 ...
- 微调数据库表结构,30 分钟搞定 WordPress 数据库查询缓慢问题
同事的美女图片站,基于 WordPress 搭建的,因为数据越来越多,变得慢,我从 PHP slow log 里面看出是 WordPress 有些查询总是很慢,即使已经安装了页面缓存插件,但是由于页面 ...
- Ios8之后, 定位的delegate不能触发的问题
if([CLLocationManager locationServicesEnabled]){ self.locationManage = [[[CLLocationManager alloc] i ...
- 智能家居esp8266对接机智云
依然存在稳定性问题 机智云官网--机智云 一个比较详细的教程--esp8266 一开始采用的是esp12f 可是他太不稳定,总是掉线,机智云的固件我也是刷了无数遍,哎太难了. 我比较懒,走过了太多 ...