JS运动库

 1 // JavaScript Document
 2
 3 function startMove(obj,json,endFn){
 4
 5         clearInterval(obj.timer);
 6
 7         obj.timer = setInterval(function(){
 8
 9             var bBtn = true;
10
11             for(var attr in json){
12
13                 var iCur = 0;
14
15                 if(attr == ‘opacity‘){
16                     if(Math.round(parseFloat(getStyle(obj,attr))*100)==0){
17                     iCur = Math.round(parseFloat(getStyle(obj,attr))*100);
18
19                     }
20                     else{
21                         iCur = Math.round(parseFloat(getStyle(obj,attr))*100) || 100;
22                     }
23                 }
24                 else{
25                     iCur = parseInt(getStyle(obj,attr)) || 0;
26                 }
27
28                 var iSpeed = (json[attr] - iCur)/8;
29             iSpeed = iSpeed >0 ? Math.ceil(iSpeed) : Math.floor(iSpeed);
30                 if(iCur!=json[attr]){
31                     bBtn = false;
32                 }
33
34                 if(attr == ‘opacity‘){
35                     obj.style.filter = ‘alpha(opacity=‘ +(iCur + iSpeed)+ ‘)‘;
36                     obj.style.opacity = (iCur + iSpeed)/100;
37
38                 }
39                 else{
40                     obj.style[attr] = iCur + iSpeed + ‘px‘;
41                 }
42
43
44             }
45
46             if(bBtn){
47                 clearInterval(obj.timer);
48
49                 if(endFn){
50                     endFn.call(obj);
51                 }
52             }
53
54         },30);
55
56     }
57
58
59     function getStyle(obj,attr){
60         if(obj.currentStyle){
61             return obj.currentStyle[attr];
62         }
63         else{
64             return getComputedStyle(obj,false)[attr];
65         }
66     }
67
68     function stopMove(obj){
69         clearInterval(obj.timer);
70     }

JS运动库

时间: 2024-11-05 20:25:58

JS运动库的相关文章

我的js运动库新

1.一些样式的获取和设置 //通过id获取当前元素 //params:id function $id(id) { return document.getElementById(id); } //向css一样获取元素 function $(selector) { return document.querySelector(selector); } //向css一样,获取一组元素 function $all(selector) { return document.querySelectorAll(s

解析JS运动

解析JS运动 物体运动原理:通过改变物体的位置,而发生移动变化.方法:      1.运动的物体使用绝对定位       2.通过改变定位物体的属性(left.right.top.bottom)值来使物体移动.例如向右或左移动可以使用offsetLeft(offsetRight)来控制左右移动.步骤:    1.开始运动前,先清除已有定时器 (因为:是连续点击按钮,物体会运动越来越快,造成运动混乱)    2.开启定时器,计算速度    3.把运动和停止隔开(if/else),判断停止条件,执行

Highcharts纯js图表库,以后可以跟客户说,你跟阿里云ECS用的图表库是同款

Highcharts是一款纯javascript编写的图表库,能够很简便的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达18种不同类型的图表,可以满足常用的Web图表需求 ! 近来维护我的阿里云服务器,进入后台偶然发现阿里云管理后台数据图表用的也是Highcharts,刚好正需要WEB端展示数据的东西,研究哈… Highcharts官网:http://www.highcharts.com Highcharts中文站:ht

带无缝滚动的轮播图(含JS运动框架)

今天学习了一下轮播图的写作,想到前一阵学过的无缝滚动得思想,所以就把轮播与滚动结合了一下.不过我的代码的神逻辑我自己都不敢恭维,在没网没参照的情况下,只能硬着头皮往下写,希望跟大家共勉吧. js运动框架的代码如下: 1 //获取样式 2 function getStyle(obj,attr){ 3 if(obj.currentStyle){ 4 return obj.currentStyle[attr]; 5 }else{ 6 return getComputedStyle(obj,false)

JS运动从入门到兴奋1

hello,我是沐晴,一个充满了才华,却靠了照骗走江湖的前端妹子.在这个充满PS的年代,这你们都信,哈哈,废话不多说,今天要分享的是关注JS运动的知识.楼主一直认为,不管学习什么,核心思想才是王道,掌握了思想,不管需求怎么改变,我们都能把它玩弄于股掌之中...下面我们就由浅入深走进运动的世界吧. 首先来看最基础的运动:单个物体向右匀速运动到某一点停止      例子:一个按钮,一个div,点击按钮,让div向右运动到某一个位置暂停 // 原理: 1 获取物体当前的位置 oDiv.offsetle

关于js运动的一些总结

js运动实现,有两种.一种是速度版,另一种是时间版. 速度版是通过对速度的加减乘除,得出元素的运动数据.时间版是通过对时间进行Tween公式运算,得出元素的运动数据. 速度版运动优点:容易在运动过程中,对运动做一些修改. 时间版运动优点:切换或缩小浏览器页面,浏览器会对网页定时器进行停缓处理.这样会导致一些速度版运动bug.因为时间版运动是通过记录时间变化区间,来对运动进行控制.所以不会有这种bug. 运动形式有:缓冲运动,碰撞运动,重力运动.缓冲运动,是速度自身也在变化的结果.碰撞运动,是碰撞

JS运动1 (转)

JS运动从入门到兴奋1 http://www.cnblogs.com/moqing/p/5666476.html hello,我是沐晴,一个充满了才华,却靠了照骗走江湖的前端妹子.在这个充满PS的年代,这你们都信,哈哈,废话不多说,今天要分享的是关注JS运动 的知识.楼主一直认为,不管学习什么,核心思想才是王道,掌握了思想,不管需求怎么改变,我们都能把它玩弄于股掌之中...下面我们就进入运动的世界吧. 首先来看最基础的运动:单个物体向右匀速运动到某一点停止      例子:一个按钮,一个div,

zepto.js touch库

最近在做一个手机版的项目,而做手机网页,那么就会考虑到用轻量级库,用jquery的话,会比较庞大,而我们就选用 zepto.js 来做开发,可是在开发的时候要用到手势事件(比如左右滑动,上下滑动),于是就在网上查了一下 zepto.js 的官网,发现有 touch 事件来模拟手势事件,这个开发就会带来便利,而不用去写JS底层代码:在网上搜罗了一下 zepto.js touch 库,找到了不多 touch.js 的相关信息,真的感觉很少(不知道是不是zepto.js不成熟的表现),终于在网上搜罗到

推荐三款强大的Js图表库

1.百度的Echart ECharts,缩写来自Enterprise Charts,是百度推出的一款开源的,商业级数据图表,它最初是为了满足百度公司商业体系里各种业务系统(如凤巢.广告管家等等)的报表需求. 2.Highcharts 中文网站:http://www.hcharts.cn/ Highcharts是国外的一款功能强大.开源.美观.图表丰富.兼容绝大多数浏览器的纯js图表库.Highcharts针对个人用户及非商业用途免费,商业用途需要购买授权. 3.阿里的G2 G2(The Gram