使用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 表单验证常见正则
Sep 28 Javascript
js下通过prototype扩展实现indexOf的代码
Dec 08 Javascript
改进UCHOME的记录发布,增强可访问性用户体验
Jan 17 Javascript
javaScript中with函数用法实例分析
Jun 08 Javascript
不想让浏览器运行javascript脚本的方法
Nov 20 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
Nov 25 Javascript
微信和qq时间格式模板实例详解
Oct 21 Javascript
JavaScript实现翻页功能(附效果图)
Feb 16 Javascript
jQuery实现jQuery-form.js实现异步上传文件
Apr 28 jQuery
详解vue-element Tree树形控件填坑路
Mar 26 Javascript
JavaScript eval()函数定义及使用方法详解
Jul 07 Javascript
JavaScript 语句之常用 for 循环详解
Mar 29 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
PHP垃圾回收机制简单说明
2010/07/22 PHP
PHP中$_FILES的使用方法及注意事项说明
2014/02/14 PHP
php结合js实现点击超链接执行删除确认操作
2014/10/31 PHP
PHP对文件进行加锁、解锁实例
2015/01/23 PHP
EasyUI 中 MenuButton 的使用方法
2012/07/14 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
jquery动态添加元素事件失效问题解决方法
2014/05/23 Javascript
让浏览器DOM元素最后加载的js方法
2014/07/29 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
jQuery简单实现提交数据出现loading进度条的方法
2016/03/29 Javascript
原生JS实现幻灯片
2017/02/22 Javascript
js canvas实现擦除效果示例代码
2017/04/26 Javascript
微信小程序 flex实现导航实例详解
2017/04/26 Javascript
Bootstrap fileinput文件上传预览插件使用详解
2017/05/16 Javascript
js实现多张图片延迟加载效果
2017/07/17 Javascript
ES6正则表达式扩展笔记
2017/07/25 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
js中Array对象的常用遍历方法详解
2019/01/17 Javascript
小程序调用微信支付的方法
2019/09/26 Javascript
Javascript操作select控件代码实例
2020/02/14 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
python去掉空白行的多种实现代码
2018/03/19 Python
解决python3读取Python2存储的pickle文件问题
2018/10/25 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
浅析HTML5页面元素及属性
2021/01/20 HTML / CSS
数控技术应届生求职信
2013/11/13 职场文书
资产评估专业学生的自我鉴定
2013/11/14 职场文书
小学新学期寄语
2014/04/02 职场文书
协议书与合同的区别
2014/04/18 职场文书
团员年度个人总结
2015/02/26 职场文书
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
2021/04/06 Python
Jackson 反序列化时实现大小写不敏感设置
2021/06/29 Java/Android
Apache Hudi数据布局黑科技降低一半查询时间
2022/03/31 Servers
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL