基础js动画

技术基础js动画 基础js动画获取元素的样式
getStyle函数
此函数返回的是一个字符串,需要调用 parseInt() 或者 parseFloat() 将返回的结果转换为数字值。
动画分类
1.简

基础射流研究…动画

获取元素的样式

getStyle函数

此函数返回的是一个字符串,需要调用parseInt()或者parseFloat()将返回的结果转换为数字值。

动画分类

1.简单动画

2.缓冲动画

3.透明度动画

注意

使用getStyle函数获取的不透明属性是一个浮点数,不能使用parseInt()对其进行转化,应该使用parseFloat()。

将不透明的值乘以100 ,然后调用Math.round(),将浮点数变成整数。(永远不要比较两个浮点数是否相等,结局绝对会出人意料。)

1.如果需要将元素恢复到动画之前的样子,动画的运动方式应该一致,否则在特殊情况下会出一些臭虫。

让图动起来的具体方式方法

一、让div动起来

var oBtn=文档。getelementbyid(' BTN 1 ');

var timer=//设置定时器

oBtn.onclick=函数startMove(){ 0

var oDiv=文档。getelementbyid(' div 1 ');

clearInterval(计时器);//关闭原有的定时器,否则多个定时器会叠加

定时器=设置间隔(函数(){ 0

var iSpeed=3;

if(odiv。offsetleft=208){ 0

clearInterval(计时器);

}else{

奥迪夫。风格。左=odiv。offsetleft是提要“px”;

}

},30);

}

二、图片淡入淡出效果

定义变量计时器=null

var=30;

函数startMove(iTarget,iSpeed){ 0

var oImg=文档。getelementbyid(' img 1 ');

clearInterval(计时器);

定时器=设置间隔(函数(){ 0

if(alpha==iTarget){ 0

clearInterval(计时器);

}else{

alpha=ispeedddocument . title=alpha

奥姆。风格。filter=' alpha(opa city 3360 ' alpha ')';

奥姆。风格。不透明度=alpha/100;

}

},30);

}

窗户。onload=function(){ 0

var oImg=文档。getelementbyid(' img 1 ');

奥姆。onmouseover=function(){ 0

startMove(100,5);

}

奥姆。onmouseout=function(){ 0

startMove(10,-5);

}

三、实现缓动效果

var oBtn=文档。getelementbyid(' BTN 1 ');

var计时器=

oBtn.onclick=函数开始移动(iTarget){ 0

var oDiv=文档。getelementbyid(' div 1 ');

clearInterval(计时器);

定时器=设置间隔(函数(){ 0

var iSpeed=(300-odiv。offset left)/8;//缓动效果

iSpeed=iSpeed 0数学。天花板: ath。地板(ISpeed);//消除小数点值的病菌

文件。title=iSpeed/' Odiv。offsetleft

if(OdiV。offsetLeft==300){ 0

clearInterval(计时器);

}else{

奥迪夫。风格。左=odiv。offsetleft是提要“px”;

}

},30);

}

四、匀速运动停止条件:与目标点无限接近即可

定时器=设置间隔(函数(){ 0

var iSpeed=0;

if(Odiv。offsetlefttarget){ 0

iSpeed=7

}else{

iSpeed=-7

}

if(数学。ABS(odiv。offsetleft-itar get)7){//是否到达终点

clearInterval(计时器);

奥迪夫。风格。top=itar get ' px

}else{

奥迪夫。风格。top=odiv。offsetleft是提要“px”;

}

},30);

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112077.html

(0)

相关推荐

  • spring oauth2 +springboot sso的案例分析

    技术spring oauth2 +springboot sso的案例分析本篇内容主要讲解“spring oauth2 +springboot sso的案例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性

    攻略 2021年11月16日
  • 怎么使用@PathVariable注解实现动态传值

    技术怎么使用@PathVariable注解实现动态传值本篇内容主要讲解“怎么使用@PathVariable注解实现动态传值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使

    攻略 2021年11月1日
  • COCOS CREATOR中SrollView如何修改

    技术COCOS CREATOR中SrollView如何修改这篇文章主要为大家展示了“COCOS CREATOR中SrollView如何修改”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并

    攻略 2021年11月19日
  • web设计模式中的单例模式是什么

    技术web设计模式中的单例模式是什么本篇内容介绍了“web设计模式中的单例模式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够

    攻略 2021年11月15日
  • 世界各国人口,现今世界各国人口形势怎么样

    技术世界各国人口,现今世界各国人口形势怎么样谢谢邀请世界各国人口,人口是人类发展的根本,截止目前全球总人数约为77.17亿人(数据来自上海自然博物馆),全球人口的不断增多,既增强了人类的能力,又给地球带来了负担。对于一个

    生活 2021年10月22日
  • 如何将Asp.NetCore3.1开源项目升级为.Net6.0(.netcore 3.1)

    技术如何将Asp.NetCore3.1开源项目升级为.Net6.0小编给大家分享一下如何将Asp.NetCore3.1开源项目升级为.Net6.0,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读

    攻略 2021年12月20日