Vue中添加滚动事件设置的方法详解


Posted in Javascript onSeptember 14, 2020

一、问题发现

在看Vue的事件文档中,测试scroll事件发现如下是行不通的,触发不了scroll事件, 经过一番搜寻未找到原因,不过找到了另外两种在Vue中设置滚动事件。

<div @scroll='showOut'></div>

二、原因分析

暂无

三、解决办法

1.直接利用mousewheel事件替代scroll事件

<div @mousewheel='showOut'></div>

mousewheel鼠标滚轮,显而易见动动鼠标滚轮就能触发事件,但是用光标拖拽滚动条就不能触发事件。

2.类似于原生JS添加滚动事件

new Vue({
    el:'#app',
    data:{
        scroll:'0'
      
    },
    methods:{
      // showOut: function ( ) {
      // console.log('hhhhh')

      // }
      scrollDs : function ( ) {
        // 页面指定了DTD,即指定了DOCTYPE时,使用document.documentElement。
        // 页面没有DTD,即没指定DOCTYPE时,使用document.body。
        this.scroll = document.documentElement.scrollTop
        console.log(this.scroll)
        
      }
    },
    // created:在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图。
    // mounted:在模板渲染成html后调用,通常是初始化页面完成后,再对html的dom节点进行一些需要的操作。
    mounted(){
      // addEventListener 方法用于向指定元素添加事件
      // 参数1:必选 事件名 例如: click , scroll , mouseenter 
      // 参数2:必选 指定事件触发时的执行函数
      // 参数3:可选 布尔值 指定事件是否咋在捕获或冒泡阶段执行
      // true - 事件在句柄捕获阶段执行
      // false - 事件句柄冒泡阶段执行
      window.addEventListener('scroll', this.scrollDs , true)
    },
  })

这种方法既能用滚轮来触发事件也能用光标拖动滚动条触发事件。

总结

到此这篇关于Vue中添加滚动事件设置的文章就介绍到这了,更多相关Vue添加滚动事件设置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
用js判断输入是否为中文的函数
Mar 10 Javascript
HTML,CSS,JavaScript速查表推荐
Dec 02 Javascript
js实现图片和链接文字同步切换特效的方法
Feb 20 Javascript
jQuery消息提示框插件Tipso
May 04 Javascript
JS日期格式化之javascript Date format
Oct 01 Javascript
将JSON字符串转换成Map对象的方法
Nov 30 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
Oct 19 Javascript
移动前端图片压缩上传的实例
Dec 06 Javascript
vue2.0 datepicker使用方法
Feb 04 Javascript
使用JS实现导航切换时高亮显示的示例讲解
Aug 22 Javascript
vue路由守卫及路由守卫无限循环问题详析
Sep 05 Javascript
openlayers4实现点动态扩散
Aug 17 Javascript
JavaScript位置参数实现原理及过程解析
Sep 14 #Javascript
swiper自定义分页器的样式
Sep 14 #Javascript
js+canvas实现转盘效果(两个版本)
Sep 13 #Javascript
js实现3D粒子酷炫动态旋转特效
Sep 13 #Javascript
原生JS实现九宫格抽奖
Sep 13 #Javascript
jQuery实现带进度条的轮播图
Sep 13 #jQuery
js+canvas实现画板功能
Sep 13 #Javascript
You might like
PHP中session变量的销毁
2014/02/27 PHP
php中将一段数据存到一个txt文件中并显示其内容
2014/08/15 PHP
php使用parse_url和parse_str解析URL
2015/02/22 PHP
centos7上编译安装php7以php-fpm方式连接apache
2018/11/08 PHP
jQuery防止click双击多次提交及传递动态函数或多参数
2014/04/02 Javascript
Jquery插件分享之气泡形提示控件grumble.js
2014/05/20 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
2015/06/19 Javascript
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
6种javascript显示当前系统时间代码
2015/12/01 Javascript
JavaScript实现跑马灯抽奖活动实例代码解析与优化(二)
2016/02/16 Javascript
JavaScript中利用jQuery绑定事件的几种方式小结
2016/03/06 Javascript
使用jQuery.form.js/springmvc框架实现文件上传功能
2016/05/12 Javascript
浅述Javascript的外部对象
2016/12/07 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
checkbox:click事件触发span元素内容改变的方法
2017/09/11 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
react build 后打包发布总结
2018/08/24 Javascript
灵活使用console让js调试更简单的方法步骤
2019/04/23 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
Vue使用Ref跨层级获取组件的步骤
2021/01/25 Vue.js
[49:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 KG VS TNC
2018/03/31 DOTA
python字符串替换示例
2014/04/24 Python
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
Django 拆分model和view的实现方法
2019/08/16 Python
python实现指定ip端口扫描方式
2019/12/17 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
安装Anaconda3及使用Jupyter的方法
2020/10/27 Python
面向对象设计的原则是什么
2013/02/13 面试题
小学教师岗位职责
2013/11/25 职场文书
中学生励志演讲稿
2014/04/26 职场文书
局机关干部群众路线个人对照检查材料思想汇报
2014/10/05 职场文书
致短跑运动员加油稿
2015/07/21 职场文书
创业计划书之青年旅馆
2019/09/23 职场文书
Redis入门教程详解
2021/08/30 Redis