vue实现匀速轮播效果


Posted in Javascript onJune 29, 2020

本文实例为大家分享了vue实现匀速轮播效果的具体代码,供大家参考,具体内容如下

vue实现匀速轮播效果

不多描述了 直接代码吧

<template>
 <div>
 <div class="box">
  <ul class="ullist" @mouseleave="clearTimeout" @mouseenter="beginTimeout">
  <li><img src="@/assets/401_images/401.gif" alt="" class="Liwidth"></li>
  <li><img src="@/assets/404_images/404.png" alt=""></li>
  <li><img src="@/assets/401_images/401.gif" alt=""></li>
  <li><img src="@/assets/404_images/404.png" alt=""></li>
  <li><img src="@/assets/401_images/401.gif" alt=""></li>
  <li><img src="@/assets/404_images/404.png" alt=""></li>
  <li><img src="@/assets/401_images/401.gif" alt=""></li>
  <li><img src="@/assets/404_images/404.png" alt=""></li>
  <li><img src="@/assets/401_images/401.gif" alt=""></li>
  </ul>
 </div>
 </div>
</template>
<script>
export default {
 data(){
 return{
  screenWidth:'',
  boxWidth:0,
  isClear:0,
  timer:null,
  left:0,
  timerRun:false,
 }
 },
 methods:{
  //获取窗口的宽度
 getListLeng(){
  this.boxWidth = document.getElementsByClassName('box')[0].offsetWidth
  var ul = document.getElementsByClassName('ullist')[0]
  var length = ul.children.length
  ul.style.width=length*230+'px'
  this.runTimeout(ul,this.boxWidth,length)
 },
 //轮播效果
 runTimeout(ul,boxWidth,length){
  let that = this
  this.timer=setInterval(function(){
  // move();
  
  that.move(ul,boxWidth,length)
  },50) 
 },
 //轮播图走的方法
 move(ul,boxWidth,length){
  var num = this.left--
  var allWidth =length*230-boxWidth
  if(Math.abs(num)>allWidth){
  ul.style.left=0+'px'
  this.left=0
  }
  ul.style.left=num+'px'
 },
 //移入
 beginTimeout(){
  clearInterval(this.timer)
 },
 //移出
 clearTimeout(){
  clearInterval(this.timer)
  this.timer = null
  this.boxWidth = document.getElementsByClassName('box')[0].offsetWidth
  let ul = document.getElementsByClassName('ullist')[0]
  let length = ul.children.length
  ul.style.width=length*230+'px'
  this.runTimeout(ul,this.boxWidth,length)
 } 
 },
 mounted(){
 this.getListLeng()
 window.onresize = () => {
  return (() => {
  this.boxWidth = document.getElementsByClassName('box')[0].offsetWidth
  })()
 },
 getSwiperList().then(res=>{
  this.bannerList = res.data
 })
 },
 //页面销毁的时候 关闭定时器
 destroyed () {
 clearInterval(this.timer)
 }
}
</script>
<style lang="scss" scped>
 .box{
 height:230px;
 width:80%;
 margin: 200px auto;
 position: relative;
 overflow: hidden;
 ul{
  position: absolute;
 }
 li{
  float: left;
  height:230px;
  width:230px;
  img{
  height:230px;
  width:230px;
  }
 }
 }
</style>

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

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

Javascript 相关文章推荐
js对象的构造和继承实现代码
Dec 05 Javascript
jQuery EasyUI API 中文文档 - Pagination分页
Sep 29 Javascript
js Calender控件使用详解
Jan 05 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
Aug 20 Javascript
JavaScript实现横向滑出的多级菜单效果
Oct 09 Javascript
javascript先序遍历DOM树的方法
Feb 27 Javascript
jQuery实现图片加载完成后改变图片大小的方法
Mar 29 Javascript
使用JS中的exec()方法构造正则表达式验证
Aug 01 Javascript
Vue.js上传图片到阿里云OSS存储的方法示例
Dec 13 Javascript
Vue 刷新当前路由的实现代码
Sep 26 Javascript
在博客园博文中添加自定义右键菜单的方法详解
Feb 05 Javascript
canvas绘制折线路径动画实现
May 12 Javascript
vant实现购物车功能
Jun 29 #Javascript
js实现随机点名器精简版
Jun 29 #Javascript
Node.js中出现未捕获异常的处理方法
Jun 29 #Javascript
在Vue中使用antv的示例代码
Jun 29 #Javascript
vue实现一个6个输入框的验证码输入组件功能的实例代码
Jun 29 #Javascript
纯JS开发baguetteBox.js响应式画廊插件
Jun 28 #Javascript
JavaScript图片旋转效果实现方法详解
Jun 28 #Javascript
You might like
PHP 时间转换Unix时间戳代码
2010/01/22 PHP
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
2011/07/23 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
ImageFlow可鼠标控制图片滚动
2008/01/30 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
javascript基础语法学习笔记
2016/01/04 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
2016/01/06 Javascript
Node.js操作mysql数据库增删改查
2016/03/30 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
javascript十六进制数字和ASCII字符之间的转换方法
2016/12/27 Javascript
jQuery自定义插件详解及实例代码
2016/12/29 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
js 闭包深入理解与实例分析
2020/03/19 Javascript
详解vue v-model
2020/08/31 Javascript
《Python学习手册》学习总结
2018/01/17 Python
Python List cmp()知识点总结
2019/02/18 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
Python PyQt5模块实现窗口GUI界面代码实例
2020/05/12 Python
python实现数字炸弹游戏
2020/07/17 Python
详解基于Scrapy的IP代理池搭建
2020/09/29 Python
可能这些是你想要的H5软键盘兼容方案(小结)
2019/04/23 HTML / CSS
Bose美国官网:购买Bose耳机和音箱
2019/03/10 全球购物
日本最大美瞳直送网:Morecontact(中文)
2019/04/03 全球购物
Optimalprint加拿大:在线打印服务
2020/04/03 全球购物
饮料业务员岗位职责
2013/12/15 职场文书
经理管理专业自荐信范文
2013/12/31 职场文书
服务员自我评价
2014/01/25 职场文书
真诚的求职信
2014/07/04 职场文书
民族学专业职业生涯规划范文:积跬步以至千里
2014/09/11 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书
信息技术课教学反思
2016/02/23 职场文书
简历中的自我评价怎么写呢?
2019/04/30 职场文书
Python语言规范之Pylint的详细用法
2021/06/24 Python