使用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 相关文章推荐
jQuery简单实现网页选项卡特效
Nov 24 Javascript
JavaScript删除指定子元素代码实例
Jan 13 Javascript
jQuery代码实现对话框右上角菜单带关闭×
May 03 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
Oct 29 Javascript
javascript显示系统当前时间代码
Dec 29 Javascript
原生JS实现《别踩白块》游戏(兼容IE)
Feb 20 Javascript
selenium 与 chrome 进行qq登录并发邮件操作实例详解
Apr 06 Javascript
关于Angular2 + node接口调试的解决方案
May 28 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
Dec 29 Javascript
你应该了解的JavaScript Array.map()五种用途小结
Nov 14 Javascript
关于node-bindings无法在Electron中使用的解决办法
Dec 18 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
Aug 13 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
smarty基础之拼接字符串的详解
2013/06/18 PHP
Zend Framework页面缓存实例
2014/06/25 PHP
php获取文件类型和文件信息的方法
2015/07/10 PHP
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
2009/07/25 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
2010/04/01 Javascript
jQuery实现多按钮单击变色
2014/11/27 Javascript
javascript作用域链(Scope Chain)用法实例解析
2015/11/30 Javascript
node.js require() 源码解读
2015/12/13 Javascript
jQuery Ztree行政地区树状展示(点击加载)
2016/11/09 Javascript
jQuery中值得注意的trigger方法浅析
2016/12/12 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
Vue2.0 从零开始_环境搭建操作步骤
2017/06/14 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
jQuery实现获取table中鼠标click点击位置行号与列号的方法
2017/10/09 jQuery
javaScript和jQuery自动加载简单代码实现方法
2017/11/24 jQuery
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
JavaScript动态添加数据到表单并提交的几种方式
2019/06/26 Javascript
vue实现广告栏上下滚动效果
2020/11/26 Vue.js
python字典多键值及重复键值的使用方法(详解)
2016/10/31 Python
Python基于dom操作xml数据的方法示例
2018/05/12 Python
使用TensorFlow实现SVM
2018/09/06 Python
PyCharm下载和安装详细步骤
2019/12/17 Python
详解Python实现进度条的4种方式
2020/01/15 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
使用CSS3和Checkbox实现JQuery的一些效果
2015/08/03 HTML / CSS
HTML5 video 上传预览图片视频如何设置、预览视频某秒的海报帧
2018/08/28 HTML / CSS
土木工程毕业生自荐信
2013/09/21 职场文书
英文简历中的自我评价用语
2013/12/09 职场文书
自我评价的范文
2014/02/02 职场文书
投资入股合作协议书
2014/10/28 职场文书
高二语文教学反思
2016/02/16 职场文书
mysql查询的控制语句图文详解
2021/04/11 MySQL
一文搞懂redux在react中的初步用法
2021/06/09 Javascript
MySQL开启事务的方式
2021/06/26 MySQL
Python中rapidjson参数校验实现
2021/07/25 Python
实例详解Python的进程,线程和协程
2022/03/13 Python