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 相关文章推荐
CheckBox 如何实现全选?
Jun 23 Javascript
javascript Zifa FormValid 0.1表单验证 代码打包下载
Jun 08 Javascript
JSON+HTML实现国家省市联动选择效果
May 18 Javascript
js实现获取焦点后光标在字符串后
Sep 17 Javascript
javascript制作sql转换为stringBuffer的小工具
Apr 03 Javascript
javascript实现的固定位置悬浮窗口实例
Apr 30 Javascript
JavaScript中的replace()方法使用详解
Jun 06 Javascript
简洁实用的BootStrap jQuery手风琴插件
Aug 31 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
Mar 17 Javascript
js中Generator函数的深入讲解
Apr 07 Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 21 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 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
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
2014/02/18 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
Laravel 中获取上一篇和下一篇数据
2015/07/27 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
2017/08/10 PHP
php表单处理操作
2017/11/16 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
一个简单的js树形菜单
2011/12/09 Javascript
简单时间提示DEMO从0开始一直进行计时
2013/11/19 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
Juery解决tablesorter中文排序和字符范围的方法
2015/05/06 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
如何屏蔽防止别的网站嵌入框架代码
2015/08/24 Javascript
webpack 插件html-webpack-plugin的具体使用
2018/04/09 Javascript
JavaScript实现的开关灯泡点击切换特效示例
2019/07/08 Javascript
详解小程序云开发攻略(解决最棘手的问题)
2019/09/30 Javascript
JavaScript的变量声明与声明提前用法实例分析
2019/11/26 Javascript
在Python中使用itertools模块中的组合函数的教程
2015/04/13 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
单利模式及python实现方式详解
2018/03/20 Python
详解python中的装饰器
2018/07/10 Python
Python异常的检测和处理方法
2018/10/26 Python
使用python进行波形及频谱绘制的方法
2019/06/17 Python
python中的列表与元组的使用
2019/08/08 Python
Python命令行click参数用法解析
2019/12/19 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
Python3打包exe代码2种方法实例解析
2020/02/17 Python
Python 内存管理机制全面分析
2021/01/16 Python
TripAdvisor越南:全球领先的旅游网站
2017/09/21 全球购物
行政办公员自我评价分享
2013/12/14 职场文书
二年级上册数学教学计划
2015/01/20 职场文书
2015上半年个人工作总结
2015/07/27 职场文书
python爬虫之爬取笔趣阁小说
2021/04/22 Python
如何利用 CSS Overview 面板重构优化你的网站
2021/10/24 HTML / CSS