Vue实现回到顶部和底部动画效果


Posted in Javascript onJuly 31, 2019

本文实例为大家分享了Vue实现回到顶部和底部动画效果的具体代码,供大家参考,具体内容如下

Vue实现回到顶部和底部动画效果

代码:

<template>
 <div>
  <div class="scroll" :class="{show:isActive}">
   <div id="toTop" @click="toTop(step)"><</div>
   <div id="toBottom" @click="toBottom(step)">></div>
  </div>
 </div>
</template>
<script>
 export default{
  props:{
   step:{ //此数据是控制动画快慢的
    type:Number,
    default:50 
   }
  },
  data(){
   return {
    isActive:false,
   }
  },
  methods:{
   toTop(i){
    //参数i表示间隔的幅度大小,以此来控制速度
    document.documentElement.scrollTop-=i;
    if (document.documentElement.scrollTop>0) {
     var c=setTimeout(()=>this.toTop(i),16);
    }else {
     clearTimeout(c);
    }
   },
   toBottom(i){
    var clientHeight=document.documentElement.clientHeight||document.body.clientHeight;
    var scrollHeight=document.documentElement.scrollHeight;
    var height=scrollHeight-clientHeight; //超出窗口上界的值就是底部的scrolTop的值
    document.documentElement.scrollTop+=i;
    if (document.documentElement.scrollTop<height) {
     var c=setTimeout(()=>this.toBottom(i),16);
    }else {
     clearTimeout(c);
    }
   }
  },
  created(){
   var vm=this;
   window.οnscrοll=function(){
    if (document.documentElement.scrollTop>60) {
     vm.isActive=true;
    }else {
     vm.isActive=false;
    }
   }
  }
 }
</script>
<style scoped>
 .scroll{
   position: fixed;
   right: 10px;
   bottom: 60px;
   width: 45px;
   height: 90px;
   cursor: pointer;
   display: none;
  }
  .scroll>div{
   width: 45px;
   height: 45px;
   transform: rotate(90deg);
   line-height: 45px;
   text-align: center;
   font-size: 35px;
   font-family: "黑体";
   background-color: rgba(0,0,0,.2);
   color: #fff;
  }
  .scroll>div:hover{
   background-color: rgba(0,0,0,.5);
  }
  .show{
   display: block;
  }
</style>

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

Javascript 相关文章推荐
理清apply(),call()的区别和关系
Aug 14 Javascript
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
Jan 15 Javascript
举例讲解JavaScript中关于对象操作的相关知识
Nov 16 Javascript
总结Node.js中的一些错误类型
Aug 15 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
Nov 10 Javascript
原生js实现节日时间倒计时功能
Jan 18 Javascript
Vue中的数据监听和数据交互案例解析
Jul 12 Javascript
JS实现上传图片的三种方法并实现预览图片功能
Jul 14 Javascript
关于TypeScript中import JSON的正确姿势详解
Jul 25 Javascript
使用InstantClick.js让页面提前加载200ms
Sep 12 Javascript
webpack下实现动态引入文件方法
Feb 22 Javascript
vue中watch的用法汇总
Dec 28 Vue.js
详解mpvue实现对苹果X安全区域的适配
Jul 31 #Javascript
vue将后台数据时间戳转换成日期格式
Jul 31 #Javascript
Vue Element UI + OSS实现上传文件功能
Jul 31 #Javascript
原生js代码能实现call和bind吗
Jul 31 #Javascript
微信小程序下拉框搜索功能的实现方法
Jul 31 #Javascript
javascript中undefined的本质解析
Jul 31 #Javascript
JavaScript实现的3D旋转魔方动画效果实例代码
Jul 31 #Javascript
You might like
无线电广播的开始
2002/01/30 无线电
php 缩略图实现函数代码
2011/06/23 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
yii用户注册表单验证实例
2015/12/26 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
地震发生中逃生十大法则
2008/05/12 Javascript
JavaScript arguments 多参传值函数
2010/10/24 Javascript
基于json的jquery地区联动效果代码
2011/07/06 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
jQuery中has()方法用法实例
2015/01/06 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
2015/09/14 Javascript
jQuery height()、innerHeight()、outerHeight()函数的区别详解
2016/05/23 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
jquery计算出left和top,让一个div水平垂直居中的简单实例
2016/07/13 Javascript
JS之相等操作符详解
2016/09/13 Javascript
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
2017/09/19 NodeJs
JavaScript实现职责链模式概述
2018/01/25 Javascript
vue如何判断dom的class
2018/04/26 Javascript
Vue单页及多页应用全局配置404页面实践记录
2018/05/22 Javascript
JavaScript中arguments和this对象用法分析
2018/08/08 Javascript
详解处理Vue单页面应用SEO的另一种思路
2018/11/09 Javascript
[44:22]完美世界DOTA2联赛循环赛 FTD vs PXG BO2第一场 11.01
2020/11/02 DOTA
CentOS7.3编译安装Python3.6.2的方法
2018/01/22 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
使用CSS3设计地图上的雷达定位提示效果
2016/04/05 HTML / CSS
3个CCIE对一个工程师的面试题
2012/05/06 面试题
abstract class和interface有什么区别
2013/08/04 面试题
生产车间实习自我鉴定
2013/09/23 职场文书
《陋室铭》教学反思
2014/02/26 职场文书
最美乡村医生事迹材料
2014/06/02 职场文书
党员评议思想汇报
2014/10/08 职场文书
医者仁心观后感
2015/06/17 职场文书
汤姆索亚历险记读书笔记
2015/06/29 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers
浅谈JavaScript浅拷贝和深拷贝
2021/11/07 Javascript