JavaScript中的事件对象、事件对象的属性

news2024/11/24 3:17:48

一、什么是事件对象

​ 1)、 事件对象 就是保存着事件相关信息的对象。当事件发生时,会自动产生事件对象(不需要new),事件对象中包含着:事件源(发生事件的dom元素),点击是鼠标的哪个键,鼠标的当前位置(事件发生的位置)等等信息。

2)、事件源:

​ 发生事件的DOM元素(按钮,文本框,div,下拉框)。在事件处理函数里可以用this表示。

3)、事件对象的获取

​ **事件对象是在事件发生后才有的。比如:

​ dom对象.onclick = function(event){

​ var e = event || window.event;

​ }

注意:event参数就是事件对象,事件对象必须写在事件处理函数里。

为了考虑到低版本的IE浏览器,需要兼容性写法

二、事件对象的属性

    • button: 记录着鼠标按下的是哪个键:

document.getElementById("box").onmousedown= function(event){
    let e = event || window.event
    console.log(e.button)
    显示:
    0:左键
    1:中键(滚轮)
    2:右键
}

2、鼠标位置相关的属性:

1)、clientX 是发生事件时,以浏览器窗口左上角为原点,鼠标离浏览器可视区域左上角的距离,就是x轴坐标,它不随不随滚动条滚动而改变;

2)、clientY 是发生事件时,以浏览器窗口左上角为原点,鼠标离浏览器可视区域左上角的距离,就是y轴坐标,它不随不随滚动条滚动而改变;

document.getElementById("box").onmousedown= function(event){
    let e = event || window.event
    console.log(e.clientX,e.clientY)
}

3)、pageX 是发生事件时,以页面的左上角为原点。鼠标离浏览器可视区域左上角的距离,就是x轴坐标,它随滚动条滚动而改变;

4)、pageY 是发生事件时,以页面的左上角为原点。鼠标离浏览器可视区域左上角的距离,就是y轴坐标,它随滚动条滚动而改变;

document.getElementById("box").onmousedown= function(event){
    let e = event || window.event
    console.log(e.pageX,e.pageY)
}

5)、screenX 是发生事件时,以显示器屏幕的左上角为原点,鼠标距离显示器屏幕左上角的距离,x轴坐标

6)、screenY 是发生事件时,以显示器屏幕的左上角为原点,鼠标距离显示器屏幕左上角的距离,x轴坐标

document.getElementById("box").onmousedown= function(event){
    let e = event || window.event
    console.log(e.screenX,e.screenY)
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/193450.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

全网最详细的mybatis plus 条件构造器queryWrapper学习,比如and(),eq(),or(),like()等方法以及分页操作

文章目录1. 引言2. 结构关系3. 环境配置3.1 引入jar包3.2 创建数据源3.2 创建User实体类3.4 创建UserMapper类3.5 创建UserService类4. 操作演示5. 注意事项1. 引言 mybatis大家都有使用过,既面向对象又灵活可配。不友好的地方是,会随着使用出现大量xml…

一篇文章带你读懂AVL树

目录 AVL树节点的定义 AVL树的插入 AVL树的旋转 1. 新节点插入较高左子树的左侧---左左:右单旋 2.新节点插入较高右子树的右侧---右右:左单旋 3. 新节点插入较高左子树的右侧---左右:先左单旋再右单旋 4. 新节点插入较高右子树的左侧-…

人工智能自然语言处理—PageRank算法和TextRank算法详解

人工智能自然语言处理—PageRank算法和TextRank算法详解 一、PageRank算法 PageRank算法最初被用作互联网页面重要性的计算方法。它由佩奇和布林于1996年提出,并被用于谷歌搜索引擎的页面排名。事实上,PageRank可以在任何有向图上定义,然后…

公司企业如何设计微信小程序?

​很多公司企业在制作小程序的时候都会考虑一个事情,就是如何设计微信小程序。有些公司企业希望把小程序设计得非常炫酷、抓人眼球。那么问题是:公司企业微信小程序的设计是否做得越酷炫、越抓人眼球就越好呢? 答案:非也&#xf…

基于SIFT的图像Matlab拼接教程

前言图像拼接技术,将普通图像或视频图像进行无缝拼接,得到超宽视角甚至360度的全景图,这样就可以用普通数码相机实现场面宏大的景物拍摄。利用计算机进行匹配,将多幅具有重叠关系的图像拼合成为一幅具有更大视野范围的图像&#x…

(一)Spring源码解析:容器的基本实现

一、Spring的整体架构 Spring的整体架构图如下所示: 二、容器的基本实现 2.1> 核心类介绍 2.1.1> DefaultListableBeanFactory DefaultListableBeanFactory是整个bean加载的核心部分,是Spring注册及加载bean的默认实现。 XmlBeanFactory集成自…

【FLASH存储器系列十四】固态硬盘结构和FTL初探

固态硬盘是一种典型的nand flash产品应用。与传统硬盘相化,固态硬盘内部没有移动的机械磁头,而是由固态电子存储芯片(闪存芯片)阵列级联组成,下图给出了固态硬盘的内部组成。现阶段,几乎所有基于闪存的固态…

ASP.NET Core+Element+SQL Server开发校园图书管理系统(三)

随着技术的进步,跨平台开发已经成为了标配,在此大背景下,ASP.NET Core也应运而生。本文主要基于ASP.NET CoreElementSql Server开发一个校园图书管理系统为例,简述基于MVC三层架构开发的常见知识点,前两篇文章简单介绍…

Nvidia深度学习环境安装

深度学习大型模型训练和部署,需要使用GPU,使用Pytorch、Tensorflow等深度学习框架之前需要安装驱动环境,本文系统环境:ubuntu22.04系统,四张3090显卡安装显卡驱动下载:选择显卡类型,下载驱动驱动下载路径&a…

Wireshark解析协议不匹配

Wireshark解析协议不匹配 1、问题 现有TLS/SSL over TCP的客户端、服务端相互通信,其中,服务端监听TCP端口6000。 使用tcpdump抓包6000端口,生成pcap文件6000.pcap: 使用Wireshark打开6000.pcap,显示如下&#xff1…

Hive(番外):Hive可视化工具IntelliJ IDEA

1 Hive CLI、Beeline CLI Hive自带的命令行客户端 优点:不需要额外安装 缺点:编写SQL环境恶劣,无有效提示,无语法高亮,误操作几率高 2 文本编辑器 Sublime、Emacs 、EditPlus、UltraEdit、Visual Studio Code等 有…

基于Seam Carving实现图像的重定位 附完整代码

相比于算法目标的复杂,算法步骤却异常的简单,下面具体介绍利用 SeamCarving 算法进行图像剪裁的步骤:1.计算图像中每个像素的“重要程度”(能量),生成能量图。在绝大多数情况下,我们可以做出如下…

【string 类的使用方法(总结)】

1. 为什么学习string类? C语言中,字符串是以\0结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要…

采用NVIDIA Jetson Orin NX 系统的视觉边缘计算机

边缘计算机采用NVIDIA Jetson Orin NX模块化系统和高带宽图像采集卡,用于实时图像采集计算和人工智能处理。虹科的合作伙伴Gidel是一家专注于高速图像采集和处理的以色列科技公司,今天宣布新的NVIDIA Jetson Orin NX™ 16GB模块化系统(SoM)将被添加到Gid…

SpringSecurity配置及使用

Spring Security 是针对Spring项目的安全框架,也是Spring Boot底层安全模块默认的技术选型,他可以实现强大的Web安全控制,对于安全控制,我们仅需要引入spring-boot-starter-security 模块,进行少量的配置,即…

什么是渲染农场,渲染农场一般怎么收费?

对于用3D软件创作效果图或影视动画的艺术家们来说,应该对渲染农场并不陌生,但是对于初入CG行业的人来说,看到网上很多人说渲染农场,肯定会疑惑,什么是渲染农场?渲染农场也叫“分布式并行集群计算系统”&…

【6】【vue3+elementplus+springboot】 管理系统 【前后端实践】

第一部分: elementplus官网:一个 Vue 3 UI 框架 | Element Plus (element-plus.org) 1、安装elementplus npm install element-plus --save查看package.json中存在依赖表示成功安装 2、引入elementplus import ElementPlus from element-plus import …

论文解读 - 城市自动驾驶车辆运动规划与控制技术综述 (第5部分,完结篇)

文章目录🚗 V. Vehicle Control(车辆控制)🔴 A. Path Stabilization for the Kinematic Model(基于运动学模型的路径稳定)🟥 1)Pure Pursuit(纯追踪)&#x1…

H3C SecParh堡垒机任意用户登录与远程执行代码漏洞

H3C SecParh堡垒机任意用户登录与远程执行代码漏洞1.H3C SecParh堡垒机任意用户登录漏洞1.1.漏洞描述1.2.漏洞影响1.3.漏洞复现1.3.1.登录页面1.3.2.构建URL1.4.总结2.H3C SecParh堡垒机远程命令执行漏洞2.1.漏洞描述2.2.漏洞影响2.3.漏洞复现2.3.1.登录页面2.3.2.构建URL2.4.总…

python-pptx 操作PPTx幻灯片文件删除并替换图片

python-pptx 操作PPTx幻灯片文件删除并替换图片 作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!😄 一、原理 通过查找ppt中的图片指纹替换 二、操作流程 原始ppt如下: 根据…