js实现缓冲运动,和匀速运动有点不相同

缓冲运动和匀速运动有点不同,看图可以知道缓冲运动速度是越来越慢的。
<style>
*{
padding:0;
margin:10px 0;
}
#div1{
height:100px;
width:100px;
background:green;
float:left;
position:relative;
left:1000px;
}
#div2{
border-left:1px solid black;
position:absolute;
height:200px;
left:600px;
float:left;
}
</style> <body>
<div id="div1"></div>
<div id="div2"></div>
</body>
首先定义两个div,一个div只看见一条边,另外一个做运动
js代码如下,带注释
<script>
var i=setInterval(function startMove ()
{
var div1=document.getElementById("div1");
var speed=(600-div1.offsetLeft)/30; //首先获取速度,因为div1。offsetleft=1000,所以此速度为负数
speed=speed>0?Math.ceil(speed):Math.floor(speed); //将速度上下取整,像素没有小数
div1.style.left=div1.offsetLeft+speed+'px'; //因为速度为负数,所以offsetleft越来越小,向左运动 if (div1.offsetLeft==600) //当达到div2的边时停止运动
{
clearInterval(i);
}
}
, 30)
</script>
js实现缓冲运动,和匀速运动有点不相同的更多相关文章
- js 运动函数篇 (一) (匀速运动、缓冲运动、多物体运动、多物体不同值运动、多物体多值运动)层层深入
前言: 本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽. 本篇文章为您分析一下原生JS写 匀速运动.缓冲运动.多物体运 ...
- js动画之缓冲运动
缓冲运动就是运动的速度与时间或者距离有关联,不是一般的匀速运动 <!DOCTYPE html> <html lang="en"> <head> ...
- [Js]缓冲运动
一.运动框架 1.在开始运动时,关闭已有定时器(否则会不断有新的定时器执行) 2.把运动和停止隔开(if/else) 二.缓冲运动 逐渐变慢,最后停止(距离越远速度越大) 速度=(目标值-当前值)/缩 ...
- js缓冲运动
缓冲运动 现象:逐渐变慢,最后停止 原理:距离越远,速度越大 速度的计算方式: 1,速度由距离决定 2,速度=(目标值-当前值)/缩放系数 说明:速度为正负数时,也决定了物体移动的方向 示例:div缓 ...
- JS缓冲运动案例:右侧居中悬浮窗
JS缓冲运动案例:右侧居中悬浮窗 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta cha ...
- JS缓冲运动案例:右下角悬浮窗
JS缓冲运动案例:右下角悬浮窗 红色区块模拟页面的右下角浮窗,在页面进行滚动时,浮窗做缓冲运动,最终在页面右下角停留. <!DOCTYPE html> <html lang=&quo ...
- JS缓冲运动案例
点击"向右"按钮,红色的#red区块开始向右缓冲运动,抵达到黑色竖线位置自动停止,再次点击"向右"#red区块也不会再运动.点击"向左"按钮 ...
- JS运动基础(二) 摩擦运动、缓冲运动
摩擦运动: 逐渐变慢,最后停止 缓冲运动: 与摩擦力的区别:可以精确的停到指定目标点距离越远速度越大速度由距离决定速度=(目标值-当前值)/缩放系数Bug:速度取整值取整: iSpeed = iSpe ...
- 点滴积累【JS】---JS小功能(JS实现多功能缓冲运动框架)
效果: 思路: 首先,多功能框架实现的功能是:css中所有的属性都可以添加进去(也可以把方法作为参数传递过去!),然后进行缓冲运动,比如:物体的高度.长度.颜色.字体大小.透明度等,都可以直接传入参数 ...
随机推荐
- jQuery遍历Json数组
var jsonArray= [{ "name": "张三", "password": "123456"},{ &qu ...
- [深入Python]Python的私有变量
Python没有真正的私有变量.内部实现上,是将私有变量进程了转化,规则是:_<类名><私有变量> 下面的小技巧可以获取私有变量: class Test(object): de ...
- 在Mac OSX 10.10 上安装opencv
http://blog.csdn.net/wdkirchhoff/article/details/41910553 在Mac OSX上如果想使用OpenCV,可以通过自己手动编译源码的方式,但比较繁琐 ...
- 对编写html代码的几点儿小建议
1.DOCTYPE说明:告诉浏览器要使用哪种规范来解释该文档内容: <!DOCTYPE html PUBLIC "-W3//DTD//XHTML 1.0 Transitional// ...
- UML学习笔记
目前转岗到业务开发,业务逻辑用到了大量的类库.UML则是理解.指导其代码实现的利器. 有6种重要的关系,按照关系的强弱排序如下: 实现 = 泛化 > 组合(关联) >聚合 > 依赖 ...
- [USACO08DEC] Trick or Treat on the Farm
题目描述 每年万圣节,威斯康星的奶牛们都要打扮一番,出门在农场的N个牛棚里转 悠,来采集糖果.她们每走到一个未曾经过的牛棚,就会采集这个棚里的1颗糖果. 农场不大,所以约翰要想尽法子让奶牛们得到快乐. ...
- 怎么使用jquery判断一个元素是否含有一个指定的类(class)
在jQuery中可以使用2种方法来判断一个元素是否包含一个确定的类(class).两种方法有着相同的功能.2种方法如下:(个人喜欢用hasClass()) 1. hasClass( ...
- 2、C#入门第2课
1.XML文件读取 XmlDocument xml; string path = "F:\\C#\\功2016.xml"; if (System.IO.File.Exists(pa ...
- 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用
在前面介绍了两篇关于我的基于MVC4+EasyUI技术的Web开发框架的随笔,本篇继续介绍其中界面部分的一些使用知识,包括控件的赋值.取值.清空,以及相关的使用. 我们知道,一般Web界面包括的界面控 ...
- NodeJS的小应用
server.js: //引入require 模块 var http=require('http'); //创建服务器 http.createServer(function(request,respo ...