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 相关文章推荐
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
Feb 17 Javascript
Jquery实战_读书笔记2 选择器
Jan 22 Javascript
JavaScript flash复制库类 Zero Clipboard
Jan 17 Javascript
表单的焦点顺序tabindex和对应enter键提交
Jan 04 Javascript
javascript中return,return true,return false三者的用法及区别
Nov 17 Javascript
js如何改变文章的字体大小
Jan 08 Javascript
JavaScript 数组- Array的方法总结(推荐)
Jul 21 Javascript
PHP获取当前页面完整URL的方法
Dec 02 Javascript
使用vue.js实现联动效果的示例代码
Jan 10 Javascript
解决Vue.js父组件$on无法监听子组件$emit触发事件的问题
Sep 12 Javascript
JS函数节流和防抖之间的区分和实现详解
Jan 11 Javascript
vue3.0搭配.net core实现文件上传组件
Oct 29 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
在Debian系统下配置LNMP的教程
2015/07/09 PHP
thinkphp 验证码 的使用小结
2017/05/07 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
2017/07/19 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
prototype 中文参数乱码解决方案
2009/11/09 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
JQuery判断radio(单选框)是否选中和获取选中值方法总结
2015/04/15 Javascript
js实现select下拉框菜单
2015/12/08 Javascript
jQuery基于ID调用指定iframe页面内的方法
2016/07/06 Javascript
jquery组件WebUploader文件上传用法详解
2020/10/23 Javascript
Vue实现选择城市功能
2017/05/27 Javascript
js插件实现图片滑动验证码
2020/09/29 Javascript
Nginx 配置多站点vhost 的方法
2018/01/07 Javascript
vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
2018/09/14 Javascript
jquery弹窗时禁止body滚动条滚动的例子
2019/09/21 jQuery
浅谈TypeScript 用 Webpack/ts-node 运行的配置记录
2019/10/11 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
[01:06:59]完美世界DOTA2联赛PWL S2 Magma vs FTD 第一场 11.29
2020/12/02 DOTA
Python Web框架Flask下网站开发入门实例
2015/02/08 Python
部署Python的框架下的web app的详细教程
2015/04/30 Python
Python基于PyGraphics包实现图片截取功能的方法
2017/12/21 Python
详解Python核心对象类型字符串
2018/02/11 Python
Python 移动光标位置的方法
2019/01/20 Python
利用Python模拟登录pastebin.com的实现方法
2019/07/12 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
5款实用的python 工具推荐
2020/10/13 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
师范院校学生自荐信范文
2013/12/27 职场文书
教师党性分析材料
2014/02/04 职场文书
体育运动口号
2014/06/09 职场文书
2015年依法行政工作总结
2015/04/29 职场文书
有关朝花夕拾的读书笔记
2015/06/29 职场文书
在 Golang 中实现 Cache::remember 方法详解
2021/03/30 Python
MySQL创建索引需要了解的
2021/04/08 MySQL
详细聊聊vue中组件的props属性
2021/11/02 Vue.js