JavaScript学习笔记之JS事件对象

yizhihongxing

JavaScript学习笔记之JS事件对象

什么是JS事件对象

JavaScript事件对象(Event Object)是在事件被触发时由浏览器自动创建的对象,它包含了与事件相关的所有信息,我们可以通过JS事件对象来获取一些有用的信息,如事件类型、触发事件的元素、鼠标的位置等。

JS事件对象的属性

以下是JS事件对象常用的属性:

  • type:事件类型,如"click"、"mouseover"等;
  • target:触发事件的元素;
  • currentTarget:事件绑定的元素;
  • pageX:鼠标指针的水平位置,相对于文档的左侧边缘;
  • pageY:鼠标指针的垂直位置,相对于文档的顶部边缘;
  • keyCode:触发事件的按键的键码值;
  • shiftKeyctrlKeyaltKey:是否按下了Shift、Ctrl、Alt键。

JS事件对象的方法

以下是JS事件对象常用的方法:

  • preventDefault():取消事件的默认行为;
  • stopPropagation():停止事件的传播;
  • stopImmediatePropagation():立即停止事件的传播。

JS事件对象的使用

以下是一个JS事件对象的使用示例:

<!DOCTYPE html>
<html>
<head>
    <title>JS事件对象使用示例</title>
    <script type="text/javascript">
        var btn = document.getElementById("btn");
        btn.onclick = function(event) {
            alert("触发事件的元素:" + event.target.tagName);
            alert("事件类型:" + event.type);
            alert("键码值:" + event.keyCode);
            alert("鼠标位置:" + event.pageX + "," + event.pageY);
            event.preventDefault(); //取消事件的默认行为
        }
    </script>
</head>
<body>
    <button id="btn">点击我</button>
</body>
</html>

以上代码中,我们给button元素绑定了一个click事件,当点击该元素时,事件会触发。在事件的处理函数中,我们用JS事件对象来获取一些有用的信息,如事件类型、触发事件的元素、键码值等,并使用event.preventDefault()方法来取消事件的默认行为。

另外一个JS事件对象的使用示例,如下:

<!DOCTYPE html>
<html>
<head>
    <title>JS事件对象使用示例</title>
    <script type="text/javascript">
        var box = document.getElementById("box");
        box.addEventListener("mouseover", function(event) {
            event.target.style.backgroundColor = "red";
            event.stopPropagation(); //停止事件的传播
        }, false);

        document.addEventListener("mouseover", function(event) {
            event.target.style.backgroundColor = "green";
        }, false);
    </script>
</head>
<body>
    <div id="box"></div>
</body>
</html>

以上代码中,我们给一个div元素绑定了一个mouseover事件,并使用event.target.style.backgroundColor来修改该元素的背景色为红色。同时,在鼠标移入该元素时,还会触发document元素上的mouseover事件,我们在该事件的处理函数中使用event.target.style.backgroundColor来修改背景色为绿色。为了避免事件在document上的传播,我们使用了event.stopPropagation()方法来停止事件的传播。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript学习笔记之JS事件对象 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • javascript基础之数据类型详解

    JavaScript基础之数据类型详解 1. 数据类型的概念和介绍 在JavaScript中,数据类型是指数据的种类和类型。JavaScript中有7种数据类型,分别是:数字(number)、字符串(string)、布尔值(boolean)、空(null)、未定义(undefined)、对象(object)、符号(symbol)。 其中,数字、字符串和布尔值…

    JavaScript 2023年5月18日
    00
  • JavaScript如何监测数组的变化

    JavaScript提供了一些方法来监测数组的变化,包括改变数组的方法、监测数组的方法以及对数组进行监听的方法,下面将分别进行详细讲解: 改变数组的方法 JavaScript提供了一些方法用于改变数组,这些方法有可能会改变数组的原始结构,从而影响到程序的正确性。因此,JavaScript也提供了一些-API-来监测数组的变化,以便我们能够及时发现程序中的问题…

    JavaScript 2023年5月27日
    00
  • javascript 函数及作用域总结介绍

    Javascript 函数及作用域总结介绍 Javascript 函数及作用域是 Javascript 学习中最核心和重要的部分之一,下面我们将深入学习并总结它们的基本知识。 函数(Function) 定义 在 Javascript 中,函数是一种数据类型,可以被执行。函数有两种方式定义,一种是函数声明方式,另一种是函数表达式方式。 函数声明方式 funct…

    JavaScript 2023年5月27日
    00
  • JavaScript中字符串(string)转json的2种方法

    下面我将详细讲解一下“JavaScript中字符串(string)转json的2种方法”。 背景知识 在JavaScript中,JSON是一种轻量级的数据交换格式,通常用于浏览器和服务器之间的数据传输。在实际开发中,我们需要将一些数据转换成JSON格式来进行传输,而字符串则是最常见的一种数据类型。那么如何将字符串转换成JSON格式呢? 方法一:使用JSON.…

    JavaScript 2023年5月27日
    00
  • 详解JavaScript常用的Hook脚本

    详解JavaScript常用的Hook脚本 什么是Hook脚本? 在编程中,Hook脚本指的是通过修改或者扩展程序中已定义的功能来实现新的功能或者增强原有功能的一种技术手段。JavaScript常用的Hook脚本主要是基于前端页面中的DOM元素和事件实现的。 Hook脚本的实现方法 Hook脚本的实现方法主要有两种:一种是利用浏览器提供的API来操作DOM元…

    JavaScript 2023年6月10日
    00
  • javascript每日必学之多态

    JavaScript每日必学之多态 什么是多态? 多态是指对象在不同场合下可以表现出不同的行为。在面向对象编程中,多态是一个重要的概念,它能够增强代码的灵活性和可扩展性。 实现多态的方式 在JavaScript中,实现多态的方式通常有两种: 1. 通过函数的参数实现 使用函数的参数实现多态,需要用到函数重载的概念。在JavaScript中,由于函数的参数个数…

    JavaScript 2023年5月18日
    00
  • 让插入到 innerHTML 中的 script 跑起来的实现代码

    首先需要了解一下,当通过 innerHTML 插入的 script 标签在页面渲染时会被认为是异步加载,因此可能会导致 script 中的内容没有被完全加载执行,而造成一些问题。为了解决这个问题,可以使用两种方法来让插入到 innerHTML 中的 script 能够正常执行。 方法一:使用 DOM API 动态创建 script 标签,避免使用 inner…

    JavaScript 2023年6月11日
    00
  • Javascript中return的使用与闭包详解

    让我为您详细讲解Javascript中return的使用与闭包详解。 Javascript中return的使用 在JavaScript中,return语句用于将函数执行的结果返回给调用方。当函数调用return时,它会停止执行函数并返回一个值。除非使用void关键字,否则JavaScript中的函数始终返回一个值,无论是直接返回还是返回undefined。下…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部