100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > js缓动动画封装源码是什么?(code)

js缓动动画封装源码是什么?(code)

时间:2019-10-18 01:52:50

相关推荐

js缓动动画封装源码是什么?(code)

web前端|js教程

js缓动动画,封装源码

web前端-js教程

本篇文章给大家带来的内容是关于js缓动动画封装源码是什么?(代码实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

仿外卖网站源码,ubuntu 创建启动分区,tomcat45秒启动,鳄龟爬虫,怎么用php发送邮件,seo149lzw

信呼app源码,vscode插件下载网站,安装ubuntu问号,tomcat实时监控,sqlite 查询最多重复,蓝舌可以用爬虫沙吗,php 调用动态库,seo名词术语,批量注册网站账号,网页关键字搜索,安卓登录注册页面模板lzw

主要用到offsetLeft、Math.ceil、Math.floor、Math.abs。

android视频会议源码,vscode怎么设置在右边,Ubuntu 设置显示,tomcat响应慢,词典 sqlite,民族文化网页设计,dedeampz 数据库名是多少,www服务器的搭建,jquery 日历 插件 周 月 年,前端 框架 效果,无心的爬虫,php常用数组函数,官网seo优化方案,数据采集springboot,phpcms 扩展标签,空间网站 下载,网页禁止查看源代码特效,bootstrap登陆页模板,dede网站后台打不开,京东分类页面代码,开源网站后台管理系统使用,php应用市场程序lzw

注意offsetLeft获取到的的值为四舍五入的style.left的数值,offsetLeft = Math.round(style.left的数值部分) 比如style.left = 369.4px, 获取到的offsetLeft = 369。

缓动动画#slow_action {width: 100px;height: 100px;background: pink;position: absolute;}

var btn1 = document.getElementById("btn1")var btn2 = document.getElementById("btn2")var p = document.getElementById("slow_action")/*** 动画原理 = 盒子位置 + 步长(步长越来越小) * 盒子位置 = 盒子本身的位置 + (目标位置 - 盒子本身位置)/10*/btn1.onclick = function () {fn(p,400)}btn2.onclick = function () {fn(p,0)}function fn(ele, target) {clearInterval(ele.timer);ele.timer = setInterval(function () {// var target = 400;//最后10像素都是1px向目标位置移动 最后到达指定位置var step = (target - ele.offsetLeft)/10;//差值大于10的时候向上取整 小于0的时候向下取整step = step > 0 ? Math.ceil(step) : Math.floor(step)ele.style.left = ele.offsetLeft + step + "px";//检测定时器是否停止console.log(1)//跳出条件 目标位置-当前位置的绝对值,小于步长if(Math.abs(target - ele.offsetLeft) < Math.abs(step)) {ele.style.left = target + "px";clearInterval(ele.timer)}}, 30);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。