鼠标滚轮滚动事件wheel

2024-04-30 01:48

本文主要是介绍鼠标滚轮滚动事件wheel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

鼠标得滚动事件wheel

鼠标的滚轮事件主要有两种:

  • onmousewheel(firefox不支持)
  • DOMMouseScroll(只有firefox支持)

wheel 的事件对象得属性:

deltaY、detail、wheelDelta ,deltaMode detail

deltaX,鼠标滚轮左右摆动,本属性是只读的。 负值,向左;正值,向右。(正负方向,跟系统的x坐标保持一致。)
deltaY,鼠标滚轮上下滚动,只读。负值,向上;正值,向下。
deltaMode,属性返回一个数字,表示滚动值 (deltaX,deltaY,deltaZ) 的长度单位。
wheelDelta, 属性返回一个数字 正数表示向上滚动 ,负数表示向下滚动
detail 属性返回一个数字 在firefox中 正数表示向下滚动 ,负数表示向上滚动 与wheelDelta相反

如何判断鼠标滚轮得滚动方向得兼容写法

function mouseWheel(e) {e = e || window.event;console.log(e);if (e.wheelDelta) {  //判断浏览器IE,谷歌滑轮事件if (e.wheelDelta > 0) {alert("滑轮向上滚动");console.log(e.wheelDelta)console.log(e.deltaMode)console.log(e.detail)}if (e.wheelDelta < 0) { alert("滑轮向下滚动");console.log(e.wheelDelta)}} else if (e.detail) {  //Firefox滑轮事件if (e.detail> 0) {alert("滑轮向下滚动");console.log(e.detail)}if (e.detail< 0) { alert("滑轮向上滚动");console.log(e.detail)}}
}
//给页面绑定滑轮滚动事件
//其他浏览器
document.onmousewheel = mouseWheel;
//火狐使用DOMMouseScroll绑定
document.addEventListener("DOMMouseScroll", mouseWheel)

scroll事件和wheel事件区别

onscroll 在滚动条滚动的时候被触发。
onscroll 触发可以有多种方式,只要可以让滚动条发生滚动(X方向或Y方向)都可以触发该事件
onscroll 滚动条不存在(容器的内容小于容器的大小)或者手动隐藏(添加样式overflow:hidden)
就不会被触发
onwheel 只要在鼠标滚轮滚动的时候就会触发 不论是否有滚动条

这篇关于鼠标滚轮滚动事件wheel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/947633

相关文章

vue+elementui分页输入框回车与页面中@keyup.enter事件冲突解决

解决这个问题的思路只要判断事件源是哪个就好。el分页的回车触发事件是在按下时,抬起并不会再触发。而keyup.enter事件是在抬起时触发。 so,找不到分页的回车事件那就拿keyup.enter事件搞事情。只要判断这个抬起事件的$event中的锚点样式判断不等于分页特有的样式就可以了 @keyup.enter="allKeyup($event)" //页面上的//js中allKeyup(e

通知中心设置一个键盘的捕捉事件

//通知中心监听键盘的frame发生改变

XMG 触摸事件的处理过程

1.自己本身并不处理,顺着响应者链条向上传递,将事件交给响应者进行处理 2.touches默认做法:把事件传递到上一个响应者 3. super是父类不是父控件

【Android面试八股文】你能说一说在平常开发过程中你是如何解决事件冲突问题的吗?

文章目录 一、内部拦截法(Inner Intercept)1.1 工作原理:1.2 实现步骤:1.3 适用场景:1.4 内部拦截法示例1.4.1. 自定义 `RecyclerView` 以处理内部拦截1.4.2. 在布局中使用 `InterceptableRecyclerView` 1.5 为什么`requestDisallowInterceptTouchEvent(boolean disa

selenium Python自动化测试(基本的键盘事件)

#coding=utf-8 ''' Created on 2015-5-10 @author: user ''' ''' 几种常用的键盘指令: send_keys(Keys.BACK_SPACE) 删除键(BackSpace) send_keys(Keys.SPACE) 空格键(Space) send_keys(Keys.TAB) 制表

QT事件处理系统之三:子类化QPushButton后,对事件进行相应处理后,自定义按钮无法发出clicked信号的问题

1、信号槽绑定 如下,Widget中进行了SelfButton按钮的信号槽绑定。 Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget){ui->setupUi

QT事件处理系统之二:窗口部件的事件拦截,以及事件的传递顺序

1、案例说明 在父窗口中为selfLineEdit窗口安装事件过滤器,这样我们可以在父窗口中首先拦截来自于selfLineEdit本身产生的事件,并且决定该事件最终是否继续传递到selfLineEdit窗口本身。 2、关键代码 selfLineEdit.cpp #include "selfLineEdit.h"#include <QDebug>selfLineEdit::selfLin

vue3实现无缝滚动列表-vue3-seamless-scroll

vue3-seamless-scroll-无缝滚动         vue3-seamless-scroll,顾名思义是应用在vue3项目中,在Vue3项目中难免会遇到让列表无缝滚动的需求,本篇文章介绍了关于vue3项目中如何实现表格内容无缝滚动及其属性的使用,需要的朋友可以参考一下。         官网介绍:支持Vite2.0,支持服务端打包,目前组件支持上下左右无缝滚动,单

vue3中子组件调用父组件事件

在 Vue 3 中,子组件调用父组件的事件(或方法)的方式与 Vue 2 类似,但 Vue 3 引入了 Composition API,这可能会改变你组织代码的方式。不过,基本的通信机制——通过自定义事件 ($emit) 通知父组件——仍然保持不变。 以下是如何在 Vue 3 中使用 Options API 和 Composition API 的示例: 使用 Options API 父组件

Vue.JS中如何监听生命周期事件?

目录 一、Vue.JS框架介绍二、Vue.JS的监听事件三、Vue.JS的生命周期事件四、Vue.JS中如何监听生命周期事件 一、Vue.JS框架介绍 Vue.js是一个用于构建用户界面的渐进式JavaScript框架。它设计得非常灵活,可以轻松地被集成到现有的项目中,也可以作为一个完整的前端解决方案来使用。Vue.js的核心库只关注视图层,这使得它非常容易学习,并且与其