使用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调用Session的实现代码
Oct 29 Javascript
jQuery的.live()和.die() 使用介绍
Sep 10 Javascript
ActiveX控件与Javascript之间的交互示例
Jun 04 Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
Jan 22 Javascript
Bootstrap每天必学之轮播(Carousel)插件
Apr 25 Javascript
vue中axios的封装问题(简易版拦截,get,post)
Jun 15 Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
May 06 Javascript
vue 重塑数组之修改数组指定index的值操作
Aug 09 Javascript
Vue如何实现变量表达式选择器
Feb 18 Vue.js
浅谈JS的原型和原型链
Jun 04 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
不用数据库的多用户文件自由上传投票系统(1)
2006/10/09 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
PHP的Json中文处理解决方案
2016/09/29 PHP
thinkPHP5.0框架引入Traits功能实例分析
2017/03/18 PHP
不错的新闻标题颜色效果
2006/12/10 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
javascript 数字格式化输出的实现代码
2013/12/10 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
js 上传文件预览的简单实例
2016/08/16 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
基于BootStrap实现简洁注册界面
2017/07/20 Javascript
详解React之key的使用和实践
2018/09/29 Javascript
Vue.directive 实现元素scroll逻辑复用
2019/11/29 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
2020/07/30 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
Python中让MySQL查询结果返回字典类型的方法
2014/08/22 Python
Python的自动化部署模块Fabric的安装及使用指南
2016/01/19 Python
python实现while循环打印星星的四种形状
2019/11/23 Python
Python Print实现在输出中插入变量的例子
2019/12/25 Python
浅谈keras 模型用于预测时的注意事项
2020/06/27 Python
css实例教程 一款纯css3实现的超炫动画背画特效
2014/11/05 HTML / CSS
新西兰购物网站:TheMarket NZ
2020/09/19 全球购物
Delphi软件工程师试题
2013/01/29 面试题
大学生自我鉴定
2013/12/16 职场文书
总经理司机职责
2014/02/02 职场文书
小学生期末评语大全
2014/04/21 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
完整版商业计划书
2014/09/15 职场文书
交警正风肃纪剖析材料
2014/10/29 职场文书
2014年节能工作总结
2014/12/18 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
社区公民道德宣传日活动总结
2015/03/23 职场文书