使用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 相关文章推荐
一个用js实现的页内搜索代码
May 23 Javascript
js关闭浏览器窗口及检查浏览器关闭事件
Sep 03 Javascript
JavaScript支持的最大递归调用次数分析
Jun 24 Javascript
jQuery实现文本框邮箱输入自动补全效果
Nov 17 Javascript
js实现的星星评分功能函数
Dec 09 Javascript
javascript实现拖放效果
Dec 16 Javascript
Javascript中常见的逻辑题和解决方法
Sep 17 Javascript
vue.js中指令Directives详解
Mar 20 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
Apr 04 Javascript
axios+Vue实现上传文件显示进度功能
Apr 14 Javascript
webpack4 从零学习常用配置(小结)
May 28 Javascript
vue+vant 上传图片需要注意的地方
Jan 03 Vue.js
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中实现记住密码下次自动登录的例子
2014/11/06 PHP
JQuery 操作select标签实现代码
2010/05/14 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
JS定时器实例
2013/04/17 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
JS获取农历日期具体实例
2013/11/14 Javascript
js中arguments的用法(实例讲解)
2013/11/30 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
JS实战篇之收缩菜单表单布局
2016/12/10 Javascript
详解微信小程序——自定义圆形进度条
2016/12/29 Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
2017/03/30 Javascript
AngularJS使用ocLazyLoad实现js延迟加载
2017/07/05 Javascript
React.js绑定this的5种方法(小结)
2018/06/05 Javascript
vue.js实现的经典计算器/科学计算器功能示例
2018/07/11 Javascript
js根据json数据中的某一个属性来给数据分组的方法
2018/10/08 Javascript
详解微信小程序框架wepy踩坑记录(与vue对比)
2019/03/12 Javascript
JavaScript交换两个变量方法实例
2019/11/25 Javascript
JavaScript实现前端倒计时效果
2021/02/09 Javascript
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
Golang与python线程详解及简单实例
2017/04/27 Python
Python通过Pygame绘制移动的矩形实例代码
2018/01/03 Python
值得收藏,Python 开发中的高级技巧
2018/11/23 Python
Python使用folium excel绘制point
2019/01/03 Python
Python3 JSON编码解码方法详解
2019/09/06 Python
6PM官网:折扣鞋、服装及配饰
2018/08/03 全球购物
MySQL面试题目集锦
2016/04/14 面试题
高中生自我鉴定范文
2013/10/30 职场文书
员工培训心得体会
2013/12/30 职场文书
庆七一活动方案
2014/01/25 职场文书
机械系毕业生求职信
2014/05/28 职场文书
企业公益活动策划方案
2014/08/24 职场文书
房产授权委托书范本
2014/09/22 职场文书
招商引资工作汇报材料
2014/10/28 职场文书
体育活动总结
2015/02/04 职场文书
祝福语集锦:给妹妹结婚的祝福语
2019/12/18 职场文书