js实现缓动动画


Posted in Javascript onNovember 25, 2020

本文实例为大家分享了js实现缓动动画的具体代码,供大家参考,具体内容如下

js实现缓动动画

利用定时器来控制元素的offsetLeft的值,offsetLeft = 开始位置 + (最终位置 - 开始位置)* 缓动系数

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>

 <style>
 * {
  margin: 0;
  padding: 0;
  border: none;
  list-style: none;
 }

 body {
  background-color: pink;
 }

 #nav {
  width: 900px;
  height: 63px;
  background: url("images/doubleOne.png") no-repeat right center #fff;
  margin: 0 auto;
  margin-top: 50px;
  border-radius: 5px;
  position: relative;
 }

 #nav ul {
  line-height: 70px;
 }

 #nav ul li {
  float: left;
  height: 63px;
  width: 88px;
  text-align: center;
  cursor: pointer;
  position: relative;
 }

 #t_mail {
  width: 88px;
  height: 63px;
  background: url("images/tMall.png") no-repeat;
  position: absolute;
 }
 </style>
</head>
<body>
 <nav id="nav">
 <span id="t_mail"></span>
  <ul>
  <li>双11狂欢</li>
  <li>服装会场</li>
  <li>数码家电</li>
  <li>母婴童装</li>
  <li>手机会场</li>
  <li>美妆会场</li>
  <li>家居建材</li>
  <li>进口会场</li>
  <li>飞猪旅行</li>
  </ul>
 </nav>

 <script>
 window.onload = function () {
  var nav = $('nav');
  var t_mall = nav.children[0];
  var ul = nav.children[1];
  var allLis = ul.children;
  var beginX = 0;

  for (var i = 0; i < allLis.length; i++) {
  var li = allLis[i];
  li.onmouseover = function () {
   end = this.offsetLeft;
  }

  li.onmousedown = function () {
   beginX = this.offsetLeft;
  }

  li.onmouseout = function () {
   end = beginX;
  }
  }

  var begin = 0, end = 0;
  setInterval(function () {
  begin = begin + (end - begin) / 10;
  t_mall.style.left = begin + 'px';
  }, 10)

  function $(id) {
  return typeof id ? document.getElementById(id) : null;
  }
 }
 </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript instanceof 内部机制探析
Oct 15 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
Jun 21 Javascript
jQuery设置聚焦并使光标位置在文字最后的实现方法
Aug 02 Javascript
详解vue2父组件传递props异步数据到子组件的问题
Jun 29 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
Mar 15 Javascript
vue.js+element-ui动态配置菜单的实例
Sep 07 Javascript
Vue.js特性Scoped Slots的浅析
Feb 20 Javascript
使用post方法实现json往返传输数据的方法
Mar 30 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
Sep 18 Javascript
使用JS监听键盘按下事件(keydown event)
Nov 07 Javascript
微信小程序登录时如何获取input框中的内容
Dec 04 Javascript
原生JS封装vue Tab切换效果
Apr 28 Vue.js
JavaScript实现缓动动画
Nov 25 #Javascript
Vue3配置axios跨域实现过程解析
Nov 25 #Vue.js
Vue使用Element实现增删改查+打包的步骤
Nov 25 #Vue.js
JavaScript实现网页动态生成表格
Nov 25 #Javascript
vue + el-form 实现的多层循环表单验证
Nov 25 #Vue.js
JavaScript实现HTML导航栏下拉菜单
Nov 25 #Javascript
vue打开其他项目页面并传入数据详解
Nov 25 #Vue.js
You might like
php后台多用户权限组思路与实现程序代码分享
2012/02/13 PHP
php写的AES加密解密类分享
2014/06/20 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
CSS鼠标响应事件经过、移动、点击示例介绍
2013/09/04 Javascript
jQuery控制TR显示隐藏的几种方法
2014/06/18 Javascript
nodejs之请求路由概述
2014/07/05 NodeJs
鼠标悬浮显示二级菜单效果的jquery实现
2014/10/29 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
基于JavaScript实现移动端TAB触屏切换效果
2015/10/20 Javascript
javascript绘制漂亮的心型线效果完整实例
2016/02/02 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
vue项目中引入noVNC远程桌面的方法
2018/03/05 Javascript
Vue2.0点击切换类名改变样式的方法
2018/08/22 Javascript
vue-cli项目代理proxyTable配置exclude的方法
2018/09/20 Javascript
vue里如何主动销毁keep-alive缓存的组件
2019/03/21 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
2019/08/20 Javascript
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
Python实现同时兼容老版和新版Socket协议的一个简单WebSocket服务器
2014/06/04 Python
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
python树的同构学习笔记
2019/09/14 Python
从numpy数组中取出满足条件的元素示例
2019/11/26 Python
python中threading和queue库实现多线程编程
2021/02/06 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
同程旅游英文网站:LY.com
2018/11/13 全球购物
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
群众路线领导对照材料
2014/08/23 职场文书
幼儿园教师的自我评价范文
2014/09/17 职场文书
考试作弊检讨书怎么写?
2014/12/21 职场文书
2015年毕业生实习评语
2015/03/25 职场文书
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL