通过原生vue添加滚动加载更多功能


Posted in Javascript onNovember 21, 2019

这篇文章主要介绍了通过原生vue添加滚动加载更多功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

vue中添加滚动加载更多,因为是单页面所以需要在跳出页面时候销毁滚动,要不会出现错乱。我们在mounted建立滚动,destroyed销毁滚动。

mounted () {
  window.addEventListener('scroll', this.handleScroll)
},
destroyed () {
  window.removeEventListener('scroll', this.handleScroll)
},

定义一个函数,在滚动到底部时候使滚动条距离顶部距离与可视区域高度之和等于滚动条总高度,在加载后如果列表长度为0时应该停止加载,要不会出现一直加载的情况

handleScroll () {
    //变量scrollTop是滚动条滚动时,距离顶部的距离
    var scrollTop = document.documentElement.scrollTop||document.body.scrollTop;
    //变量windowHeight是可视区的高度
    var windowHeight = document.documentElement.clientHeight || document.body.clientHeight;
    //变量scrollHeight是滚动条的总高度
    var scrollHeight = document.documentElement.scrollHeight||document.body.scrollHeight;
    //滚动条到底部的条件
    if(scrollTop+windowHeight==scrollHeight &&this.list.length !==0){
      this.loadMore() // 加载的列表数据
    }
  }

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

Javascript 相关文章推荐
javascript使用eval或者new Function进行语法检查
Oct 16 Javascript
Jquery知识点一 Jquery的ready和Dom的onload的区别
Jan 15 Javascript
基于jQuery的烟花效果(运动相关)点击屏幕出烟花
Jun 14 Javascript
js中对象的声明方式以及数组的一些用法示例
Dec 11 Javascript
jquery实现checkbox 全选/全不选的通用写法
Feb 22 Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
Oct 01 Javascript
jQuery表单事件实例代码分享
Aug 18 Javascript
Vue-Access-Control 前端用户权限控制解决方案
Dec 01 Javascript
详解Axios 如何取消已发送的请求
Oct 20 Javascript
基于游标的分页接口实现代码示例
Nov 12 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
Aug 03 Javascript
vue实现顶部菜单栏
Nov 08 Javascript
小程序api实现promise封装过程解析
Nov 21 #Javascript
如何基于原生javaScript生成带图片的二维码
Nov 21 #Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
Nov 21 #Javascript
vue element 中的table动态渲染实现(动态表头)
Nov 21 #Javascript
浅谈Vue SSR中的Bundle的具有使用
Nov 21 #Javascript
webpack常用构建优化策略小结
Nov 21 #Javascript
Vue 中 filter 与 computed 的区别与用法解析
Nov 21 #Javascript
You might like
php数组总结篇(一)
2008/09/30 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
2014/06/23 PHP
YII CLinkPager分页类扩展增加显示共多少页
2016/01/29 PHP
php实现在线通讯录功能(附源码)
2016/05/13 PHP
laravel 根据不同组织加载不同视图的实现
2019/10/14 PHP
IE8 兼容性问题(属性名区分大小写)
2009/06/04 Javascript
深入理解JavaScript系列(15) 函数(Functions)
2012/04/12 Javascript
js window.print实现打印特定控件或内容
2013/09/16 Javascript
容易造成JavaScript内存泄露几个方面
2014/09/04 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
详解Vue用自定义指令完成一个下拉菜单(select组件)
2017/10/31 Javascript
Angular简单验证功能示例
2017/12/22 Javascript
JS运动特效之同时运动实现方法分析
2018/01/24 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
jQuery实现获取多选框的值示例
2020/02/07 jQuery
JQuery插件tablesorter表格排序实现过程解析
2020/05/28 jQuery
vue 解决addRoutes多次添加路由重复的操作
2020/08/04 Javascript
wxPython事件驱动实例详解
2014/09/28 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
python 读取文件并替换字段的实例
2018/07/12 Python
python实现最小二乘法线性拟合
2019/07/19 Python
Python获取二维数组的行列数的2种方法
2020/02/11 Python
python如何用matplotlib创建三维图表
2021/01/26 Python
酒吧副总经理岗位职责
2013/12/10 职场文书
质检部部长职责
2013/12/16 职场文书
致长跑运动员广播稿
2014/01/31 职场文书
区优秀教师事迹材料
2014/02/10 职场文书
高三学生评语大全
2014/04/25 职场文书
加油口号大全
2014/06/13 职场文书
2014年政教处工作总结
2014/12/20 职场文书
党员倡议书
2015/01/19 职场文书
摩登时代观后感
2015/06/03 职场文书
用Python创建简易网站图文教程
2021/06/11 Python
JavaScript组合继承详解
2021/11/07 Javascript
Pytorch中使用ImageFolder读取数据集时忽略特定文件
2022/03/23 Python
手把手带你彻底卸载MySQL数据库
2022/06/14 MySQL