[前端开发] 常见的 HTML CSS JavaScript 事件

  • 代码示例指路 常见的 HTML、CSS、JavaScript 事件代码示例

常见的 HTML CSS JavaScript 事件

  • 事件
    • HTML 事件
      • 鼠标事件
      • 键盘事件
      • 表单事件
    • JavaScript 事件对象
    • 事件代理(事件委托)


事件

在 Web 开发中,事件是用户与网页交互的重要方式之一。通过事件,用户可以与页面元素进行交互,触发相应的功能或效果。本文将介绍常见的 HTML、CSS、JavaScript 事件,以及事件对象和事件代理的概念。

HTML 事件

鼠标事件

鼠标事件是用户通过鼠标与页面元素交互时触发的事件。常见的鼠标事件包括:

  • click: 单击鼠标时触发。
  • dblclick: 在同一元素双击鼠标时触发。
  • mousedown: 按下鼠标键时触发。
  • mouseup: 释放按下的鼠标键时触发。
  • mousemove: 当鼠标在节点内部移动时触发,持续移动时会连续触发。
  • mouseenter: 鼠标进入一个节点时触发,进入子节点不会触发。
  • mouseleave: 鼠标离开一个节点时触发,离开父节点不会触发。
  • mouseover: 鼠标进入一个节点时触发,进入子节点会再次触发。
  • mouseout: 鼠标离开一个节点时触发,离开父节点也会触发。
  • wheel: 滚动鼠标时触发。

键盘事件

键盘事件是用户通过键盘与页面元素交互时触发的事件。常见的键盘事件包括:

  • keydown: 按下键盘时触发。
  • keypress: 按下有值的键触发(数字、字母等)。
  • keyup: 松开键盘时触发。

表单事件

表单事件是用户在表单元素中输入时触发的事件。常见的表单事件包括:

  • input: 当表单元素的值发生改变时触发。
  • select: 当在输入框中选中文本时触发。
  • change: 当表单元素的值发生改变时触发,但与 input 不同的是不会连续触发,而是在全部修改完后触发。
  • reset: 当表单重置时触发,即所有表单成员变回默认值。
  • submit: 当表单数据向服务器提交时触发。

JavaScript 事件对象

事件发生后,会产生一个事件对象作为参数传给监听函数。事件对象常见的属性包括:

  • Event.target: 返回事件当前所在的节点。
  • Event.type: 返回一个字符串,表示事件的类型。
  • Event.preventDefault(): 取消浏览器对当前事件的默认行为。
  • Event.stopPropagation(): 阻止事件在 DOM 中继续传播。

事件代理(事件委托)

事件代理是一种将事件处理程序添加到一个父元素上,以处理其子元素的事件的技术。通过事件代理,可以实现更高效的事件管理,减少事件处理程序的数量。常用于列表或表格等动态内容的处理。

<ul id="list"><li>列表1</li><li>列表2</li><li>列表3</li><li>列表4</li><li>列表5</li>
</ul><script>var list = document.getElementById("list");list.addEventListener("click", function(e) {if (e.target.tagName === "LI") {console.log("点击了 li 标签");console.log(e.target.innerHTML);}});
</script>

通过事件代理,我们可以在父元素上监听子元素的事件,从而简化代码并提高性能。

在 Web 开发中,事件是实现交互的关键,理解事件相关知识将有助于更好地处理用户与网页之间的交互行为。

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

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

相关文章

LeetCode405. Convert a Number to Hexadecimal

文章目录 一、题目二、题解 一、题目 Given an integer num, return a string representing its hexadecimal representation. For negative integers, two’s complement method is used. All the letters in the answer string should be lowercase characters, and there …

二进制和进制转换

前言 我们经常能听到2进制、8进制、10进制、16进制这样的讲法&#xff0c;那是什么意思呢&#xff1f;其实2进制、8进 制、10进制、16进制是数值的不同表示形式而已。 比如&#xff1a;数值15的各种进制的表示形式&#xff1a; 15的2进制&#xff1a;111115的8进制&#xff1…

阅读笔记(BMSB 2018)Video Stitching Based on Optical Flow

参考文献 Xie C, Zhang X, Yang H, et al. Video Stitching Based on Optical Flow[C]//2018 IEEE International Symposium on Broadband Multimedia Systems and Broadcasting (BMSB). IEEE, 2018: 1-5. 摘要 视频拼接在计算机视觉中仍然是一个具有挑战性的问题&#xff0…

完成端口的看法

很早之前使用过完成端口&#xff0c;当时觉得是很不错的技术。但是后来发现用的地方并不多&#xff0c;对它也有些自己的想法&#xff0c;仁者见仁智者见智。 应用场景上&#xff0c; 个人觉得&#xff0c;iocp有些鸡肋&#xff0c;一般的应用用不上&#xff0c;复杂的程序…

wps使用方法(包括:插入倒三角符号,字母上面加横线,将word中的所有英文设置为time new roman)

倒三角符号 字母上面加横线 将word中的所有英文设置为time new roman ctrla选中全文

语音唤醒——

文章目录 配置主代码 参考文档&#xff1a;https://picovoice.ai/docs/quick-start/porcupine-python/ 配置 pip install pvporcupine主代码 ACCESS_KEY&#xff1a;需要将该参数填入即可 # # Copyright 2018-2023 Picovoice Inc. # # You may not use this file except in …

人机协同中的感应与响应

人机协同中的感应与响应是指人与机器之间的互动过程中&#xff0c;机器对人的动作、行为、情感等进行感知&#xff0c;并根据这些感知信息作出相应的反应。感应是指机器能够通过传感器、摄像头等设备感知到人的动作、语音、表情等信息&#xff0c;将其转化为数字信号或数据&…

MySQL事务的概念

一、事务定义 事务&#xff1a;事务是一个最小的不可在分的工作单元&#xff1b;通常一个事务对应一个完整的业务(例如银行账户转账业务&#xff0c;该业务是一个最小的工作单元)一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成。事务只和DML语句有关&a…

Java基于微信小程序的医院挂号小程序,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

Jenkins 2.426.3新版设置中文

1. 插件页面显示无法联网 &#xff0c;点击Plugins一直提示连接超时&#xff0c;设置公司代理后 2. 稍等一会儿点击如下图&#xff0c;插件就出来了&#xff0c;然后输入Locale进行下载 3. 以下是我下载安装好的 4.打开设置&#xff0c;找到Locale选项&#xff0c;设置成zh_CN…

第13章 网络 Page738~741 13.8.3 TCP/UDP简述

libcurl是C语言写成的网络编程工具库&#xff0c;asio是C写的网络编程的基础类型库 libcurl只用于客户端&#xff0c;asio既可以写客户端&#xff0c;也可以写服务端 libcurl实现了HTTP\FTP等应用层协议&#xff0c;但asio却只实现了传输层TCP/UDP等协议。 在学习http时介绍…

305_C++_定义了一个定时器池 TimerPool 类和相关的枚举类型和结构体

头文件:定义了一个定时器池 TimerPool 类和相关的枚举类型和结构体 #ifndef TIMERPOOL_H #define TIMERPOOL_H #include "rsglobal.h" #include "taskqueue.h" #incl

【IO流】FileOutputStream 字节输出流

FileOutputStream 字节输出流 1. 概述2. 作用3. 书写步骤4. 构造方法5. 换行写6. 续写7. 注意事项 1. 概述 FileOutputStream 是 Java 中用于向文件写入字节数据的输出流类。它用于创建一个文件输出流&#xff0c;该流用于将数据写入文件。 功能&#xff1a;FileOutputStream …

C高级D5作业

1.#!/bin/bash read -p "请输入一个字符>>" -n 1 c echo case $c in [[:lower:]]) echo "小写" ;; [[:upper:]]) echo "大写" ;; [1-9]) echo "数字" ;; …

阿里云香港网络线路类型BGP(多线)精品延迟测试

阿里云香港等地域服务器的网络线路类型可以选择BGP&#xff08;多线&#xff09;和 BGP&#xff08;多线&#xff09;精品&#xff0c;普通的BGP多线和精品有什么区别&#xff1f;BGP&#xff08;多线&#xff09;适用于香港本地、香港和海外之间的互联网访问。使用BGP&#xf…

ChatGPT用于润色中文学术论文

方案一&#xff1a; 以下是一段用于润色中文学术论文的指令, 该指令可以生成一个表格, 第一列是润色前, 第二列是润色后, 第三列是解释做了什么修改。指令如下&#xff1a; As a Chinese academic paper writing improvement assistant, your task is to improve the spelling…

C++ //练习 7.27 给你自己的Screen类添加move、set和display函数,通过执行下面的代码检验你的类是否正确。

C Primer&#xff08;第5版&#xff09; 练习 7.27 练习 7.27 给你自己的Screen类添加move、set和display函数&#xff0c;通过执行下面的代码检验你的类是否正确。 Screen myScreen(5, 5, X); myScreen.move(4, 0).set(#).display(cout); cout<<"\n"; myScr…

力扣刷题-290.单词规律

给定一种规律 pattern 和一个字符串 s &#xff0c;判断 s 是否遵循相同的规律。 这里的 遵循 指完全匹配&#xff0c;例如&#xff0c; pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern "abba", s "…

循环、数组、match

for循环 循环&#xff1a;周而复始 For&#xff08;临时变量&#xff1b;循环条件&#xff1b;腰间变更&#xff09;{ 循环体 } For循环可以嵌套 while循环 声明变量 While&#xff08;条件&#xff09;{ 循环体 变量的变化} do while循环 do{ 执行语句&#xff1b; …

LeetCode Python - 23.合并K个升序链表

目录 题目答案运行结果 题目 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中&#xff0c;返回合并后的链表。 示例 1&#xff1a; 输入&#xff1a;lists [[1,4,5],[1,3,4],[2,6]] 输出&#xff1a;[1,1,2,3,4,4,5,6] 解释&a…