使用vue.js在页面内组件监听scroll事件的方法


Posted in Javascript onSeptember 11, 2018

思路:scroll在哪儿个组件内,就在获取那个dom元素。网上好多思路是

window.addEventListener("scroll", function(){
  console.log('scrolling');
  });

这是监听不到的!如果你整个网页可以滑动,或许还可以试试!

对于像我这样,只在页面的内的一个div内要监听的。

实现代码如下:

第一步:滑动的组件外层的div加 ref="viewBox" 为了通过$refs获取dom元素

<!--设备列表-->
<div class="deviceWrapper" ref="viewBox">
 <mu-refresh-control :refreshing="refreshing" :trigger="trigger" @refresh="refresh"/>
 <div class="demo-grid">
 <!--设备列表 手机一行两列 pad一行4列-->
 <mu-row>
  <mu-col v-for="device in devicesList" width="50" tablet="25" desktop="25">
  <deviceCardView :device-data="device""></devicelightCardView>
  </mu-col>
 </mu-row>
 </div>
 <p class="bottomLine" v-bind:class="{bottomLineVisible:isScroll}">---------------------我是有底线的---------------------</p>
</div>

第二步:

mounted() {
// 通过$refs获取dom元素
 this.box = this.$refs.viewBox
 // 监听这个dom的scroll事件
 this.box.addEventListener('scroll', () => {
 console.log(" scroll " + this.$refs.viewBox.scrollTop)
 //以下是我自己的需求,向下滚动的时候显示“我是有底线的(类似支付宝)”
 this.isScroll=this.$refs.viewBox.scrollTop>0
 }, false)
}

ps:具体怎么做,看需求了。只要能打印出来.scrollTop就行了

以上这篇使用vue.js在页面内组件监听scroll事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 跳转代码集合
Dec 03 Javascript
jQuery实现用户注册的表单验证示例
Aug 28 Javascript
跨域传值即主页面与iframe之间互相传值
Dec 09 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
Apr 06 Javascript
Ionic快速安装教程
Jun 03 Javascript
NODE.JS跨域问题的完美解决方案
Oct 20 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
Jul 12 Javascript
vue2.0 实现页面导航提示引导的方法
Mar 13 Javascript
微信小程序单选radio及多选checkbox按钮用法示例
Apr 30 Javascript
vue列表单项展开收缩功能之this.$refs的详解
May 05 Javascript
js核心基础之构造函数constructor用法实例分析
May 11 Javascript
javascript实现视频弹幕效果(两个版本)
Nov 28 Javascript
vue+axios+element ui 实现全局loading加载示例
Sep 11 #Javascript
Webpack之tree-starking 解析
Sep 11 #Javascript
node.js之基础加密算法模块crypto详解
Sep 11 #Javascript
Vue在页面数据渲染完成之后的调用方法
Sep 11 #Javascript
浅谈Webpack核心模块tapable解析
Sep 11 #Javascript
原生js检测页面加载完毕的实例
Sep 11 #Javascript
vue props传值失败 输出undefined的解决方法
Sep 11 #Javascript
You might like
How to Auto Include a Javascript File
2007/02/02 Javascript
用函数式编程技术编写优美的 JavaScript_ibm
2008/05/16 Javascript
js 强制弹出窗口代码研究-又一款代码
2010/03/20 Javascript
16个最流行的JavaScript框架[推荐]
2011/05/29 Javascript
js 取时间差去掉周六周日实现代码
2012/12/25 Javascript
JavaScript中的style.display属性操作
2013/03/27 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
基于jquery实现无限级树形菜单
2016/03/22 Javascript
jQuery 操作input中radio的技巧
2016/07/18 Javascript
javascript淘宝主图放大镜功能
2016/10/20 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
jquery无法为动态生成的元素添加点击事件的解决方法(推荐)
2016/12/26 Javascript
AngularJS 限定$scope的范围实例详解
2017/06/23 Javascript
Redux实现组合计数器的示例代码
2018/07/04 Javascript
vue router 组件的高级应用实例代码
2019/04/08 Javascript
React倒计时功能实现代码——解耦通用
2020/09/18 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
[51:06]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第二场 1月26日
2021/03/11 DOTA
跟老齐学Python之dict()的操作方法
2014/09/24 Python
Python标准异常和异常处理详解
2015/02/02 Python
python爬虫入门教程--优雅的HTTP库requests(二)
2017/05/25 Python
python 连接各类主流数据库的实例代码
2018/01/30 Python
浅谈flask源码之请求过程
2018/07/26 Python
Python3爬虫使用Fidder实现APP爬取示例
2018/11/27 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
python实现共轭梯度法
2019/07/03 Python
keras 自定义loss层+接受输入实例
2020/06/28 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
常用的10个Python实用小技巧
2020/08/10 Python
建筑专业自我鉴定
2013/10/22 职场文书
生日答谢词
2015/01/05 职场文书
个人销售励志奋斗口号
2019/12/05 职场文书