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 相关文章推荐
Mootools 1.2教程 正则表达式
Sep 15 Javascript
javascript 伪数组实现方法
Oct 11 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(四)用地图块拼成大地图
Jan 23 Javascript
值得分享的Bootstrap Ace模板实现菜单和Tab页效果
Dec 30 Javascript
详解JavaScript的AngularJS框架中的表达式与指令
Mar 05 Javascript
用jQuery向div中添加Html文本内容的简单实现
Jul 13 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 Javascript
深入学习Bootstrap表单
Dec 13 Javascript
React 子组件向父组件传值的方法
Jul 24 Javascript
vue cli使用绝对路径引用图片问题的解决
Dec 06 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
Sep 18 Javascript
简单了解Vue computed属性及watch区别
Jul 10 Javascript
详解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
PHP的面试题集
2006/11/19 PHP
PHP类的反射用法实例
2014/11/03 PHP
php实现用已经过去多长时间的方式显示时间
2015/06/05 PHP
PHP滚动日志的代码实现
2015/06/10 PHP
windows下apache搭建php开发环境
2015/08/27 PHP
laravel 判断查询数据库返回值的例子
2019/10/11 PHP
JS Array对象入门分析
2008/10/30 Javascript
js 实现css风格选择器(压缩后2KB)
2012/01/12 Javascript
jQuery阻止事件冒泡具体实现
2013/10/11 Javascript
jquery插件hiAlert实现网页对话框美化
2015/05/03 Javascript
浅谈jQuery页面的滚动位置scrollTop、scrollLeft
2015/05/19 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
javascript多物体运动实现方法分析
2016/01/08 Javascript
Javascript oop设计模式 面向对象编程简单实例介绍
2016/12/13 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
javascript中call,apply,callee,caller用法实例分析
2019/07/24 Javascript
bootstrap table实现iview固定列的效果实例代码详解
2019/09/30 Javascript
Vue强制组件重新渲染的方法讨论
2020/02/03 Javascript
python实现K最近邻算法
2018/01/29 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
2018/02/23 Python
利用python对Excel中的特定数据提取并写入新表的方法
2018/06/14 Python
Python基本socket通信控制操作示例
2019/01/30 Python
Python制作词云图代码实例
2019/09/09 Python
浅谈pytorch、cuda、python的版本对齐问题
2020/01/15 Python
Python递归函数特点及原理解析
2020/03/04 Python
Python如何省略括号方法详解
2020/03/21 Python
Python MOCK SERVER moco模拟接口测试过程解析
2020/04/13 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
opencv之颜色过滤只留下图片中的红色区域操作
2020/06/05 Python
python+selenium自动化实战携带cookies模拟登陆微博
2021/01/19 Python
自动化专业本科毕业生求职信
2013/10/20 职场文书
房地产项目建议书
2014/03/12 职场文书
培训讲师岗位职责
2014/04/13 职场文书
儿童诗两首教学反思
2016/02/23 职场文书
社交电商模式的兴起:这些新的商机千万别错过
2019/07/26 职场文书
PyQt5结合QtDesigner实现文本框读写操作
2021/06/11 Python