JavaScript之常用的事件

文章目录

  • 前言
  • 为什么使用事件呢?
  • 常用的触发事件
    • 窗口事件
      • onblur
      • onfocus
      • onresize
      • 窗口加载事件
    • 表单事件
      • onchange
      • oninput
    • 键盘事件
      • onkeydown
      • onkeyup
    • 鼠标事件
      • onclick
      • ondblclick
      • onmousemove
      • onmouseout
      • onscroll
  • 总结
    • 窗口事件总结
    • 表单事件总结
    • 键盘事件总结
    • 鼠标事件总结


前言

在网页中我们可以看到很多效果,本章我们学习一部分常用的事件

为什么使用事件呢?

JavaScript使用事件是为了响应用户的操作和互动。通过事件,可以在特定的情况下触发相应的代码。例如,当用户点击一个按钮时,可以触发一个点击事件,然后执行与该事件相关的代码,比如弹出一个对话框、改变页面的样式等。

事件可以帮助开发者实现与用户交互的功能,使网页更加动态和用户友好。通过使用事件,开发者可以监听并响应用户的操作,比如点击、鼠标移动、键盘输入等,从而改变页面的行为和显示。

除了与用户交互相关的事件,还有许多其他的事件可用于处理其他情况下的操作。例如,可以使用定时器事件定期执行一些代码,或者使用表单提交事件处理表单的数据等。

总而言之,JavaScript使用事件是为了实现网页的交互性和动态性,能够使用户与网页进行实时的互动。

常用的触发事件

窗口事件

onblur

当前元素失去焦点时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>/*  当窗口失去焦点时 */window.onblur = function () {/*** console 为控制台输出* log 为日志* 控制台输出日志*/console.log('窗口失去了焦点!');
}</script>
</head>
<body></body>
</html>

运行结果:
在这里插入图片描述

onfocus

当某个元素获得焦点时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>/*** 当窗口获得焦点时*/window.onfocus = function () {console.log('窗口获得了焦点!');}</script>
</head>
<body></body>
</html>

运行结果:

在这里插入图片描述

onresize

当改变浏览器的窗口大小时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onresize = function (){console.log("窗口大小发生改变")}</script>
</head>
<body></body>
</html>

运行结果:
在这里插入图片描述

窗口加载事件

窗口加载中就会触发

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onload = function (){console.log("窗口加载完毕")}</script>
</head>
<body></body>
</html>

运行结果:
在这里插入图片描述

表单事件

onchange

内容改变事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>function fun1() {console.log('内容发生改变')}</script>
</head>
<body>
<form>
<input type="text" name="aa" onchange="fun1()">
</form>
</body>
</html>

运行结果:
在这里插入图片描述

oninput

当文本框内容改变时 ,立即将改变内容 输出在控制台

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>function fun1() {console.log('内容发生改变')}</script>
</head>
<body>
<form>
<input type="text" name="aa" oninput="fun1()">
</form>
</body>
</html>

运行结果:
在这里插入图片描述

键盘事件

onkeydown

当键盘上的某个按键被按下时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onkeydown = function () {event = event || window.event;console.log('键盘按下了' + event.keyCode);if (event.keyCode == 13) {console.log("按下了回车")}}</script>
</head>
<body></body>
</html>

运行结果:
在这里插入图片描述

onkeyup

当键盘上的某个按键被按下后弹起时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onkeydown = function () {event = event || window.event;console.log('键盘按下了' + event.keyCode);if (event.keyCode == 13) {console.log("按下了回车")}}</script>
</head>
<body></body>
</html>

运行结果:
在这里插入图片描述

鼠标事件

onclick

点击鼠标时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onclick=function (){console.log("鼠标点击")}</script>
</head>
<body>
</body>
</html>

运行结果:
在这里插入图片描述

ondblclick

双击鼠标时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.ondblclick=function (){console.log("鼠标双击")}</script>
</head>
<body>
</body>
</html>

运行结果:
在这里插入图片描述

onmousemove

鼠标移动时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onmousemove=function (){console.log("鼠标移动触发")}</script>
</head>
<body>
</body>
</html>

运行结果:

在这里插入图片描述

onmouseout

鼠标从某个设置了此事件的元素上离开时触发此事件

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onmouseout=function (){console.log("鼠标悬浮后离开触发")}</script>
</head>
<body>
</body>
</html>

运行结果:

在这里插入图片描述

onscroll

当滚动元素的滚动条运行时

代码演示:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>window.onscroll =function (){console.log("鼠标滚轮触发")}</script>
</head>
<body>
<!--此处省阅多条代码-->
</body>
</html>

运行结果:
在这里插入图片描述

总结

窗口事件总结

关键单词作用
onblur失去焦点
onfocus获得焦点
onload窗口加载事件
onresize窗口大小缩放事件

表单事件总结

关键单词作用
onchange内容改变事件
oninput当文本框内容改变时 ,立即将改变内容 输出在控制台
oninvalid获取表单 未能提交时
onselect当文本框内容被选中时
onsubmit为表单绑定提交事件

键盘事件总结

关键单词作用
onkeydown当键盘上的某个按键被按下时触发此事件
onkeyup当键盘上的某个按键被按下后弹起时触发此事件
onkeypress当输入有效的字符按键时触发此事件

鼠标事件总结

关键单词作用
onclick鼠标单击时触发此事件
ondblclick鼠标双击时触发此事件
onmousedown鼠标按下时触发此事件
onmouseup鼠标弹起时触发的事件
onmouseover鼠标移动到某个设置了此事件的元素上时触发此事件
onmousemove鼠标移动时触发此事件
onmouseout鼠标从某个设置了此事件的元素上离开时触发此事件
onscroll当滚动元素的滚动条运行时
onmousewheel当鼠标的滚轮运行时

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

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

相关文章

UE4运用C++和框架开发坦克大战教程笔记(十二)(第37~39集)

UE4运用C和框架开发坦克大战教程笔记&#xff08;十二&#xff09;&#xff08;第37~39集&#xff09; 37. 延时事件系统38. 协程逻辑优化更新39. 普通按键绑定 37. 延时事件系统 由于梁迪老师是写 Unity 游戏出身的&#xff0c;所以即便 UE4 有自带的 TimeManager 这样的延时…

BUG-由浏览器缩放引起PC端显示手机端视图

文章目录 来源解决 来源 启动Vue项目&#xff0c;用浏览器打开显示手机端视图&#xff0c;从vscode直接ctrl链接打开正常显示。 检查-未开启仿真&#xff0c;但仍显示错误。 解决 浏览器缩放问题。 修改为100%

ArcGIS高程点生成等高线

基本步骤&#xff1a;数据清洗→创建TIN→TIN转栅格→等值线→平滑线。 1.&#xff08;重要&#xff09;数据清理&#xff1a;删除高程点中的高程异常值数据。 2.创建TIN:系统工具→3D Analyst Tools→数据管理→TIN→创建TIN&#xff08;可直接搜索工具TIN&#xff09;。 单击…

十二:爬虫-Scrapy框架(上)

一&#xff1a;Scrapy介绍 1.Scrapy是什么&#xff1f; Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架(异步爬虫框架) 通常我们可以很简单的通过 Scrapy 框架实现一个爬虫&#xff0c;抓取指定网站的内容或图片 Scrapy使用了Twisted异步网…

LabVIEW的便携式车辆振动测试分析

随着计算机和软件技术的发展&#xff0c;虚拟仪器正逐渐成为机械工业测试领域的主流。在现代机械工程中&#xff0c;特别是车辆振动测试&#xff0c;传统的测试方法不仅设备繁杂、成本高昂&#xff0c;而且操作复杂。为解决这些问题&#xff0c;开发了一款基于美国国家仪器公司…

1. pytorch mnist 手写数字识别

文章目录 一、数据集介绍1.1、简介1.2 详细介绍1、数据量2、标注量3. 标注类别4.数据下载5.数据集解读 二、读取、加载数据集1、pytorch 自带库函数2、通过重构Dataset类读取特定的MNIST数据或者制作自己的MNIST数据集 三、模型构建四、 runtraintest评估模型的性能检查点的持续…

在Java中使用sort()方法进行排序

思想 采用Array类的sort()方法&#xff0c;sort()可以对数组进行排序,有很多重载格式&#xff0c;可以对任何数据类型进行不同数据类型的排序。 代码 import java.util.Arrays; import java.util.Random; public class SortSequence {public static void main(String[] arg…

C# ASP.NET 实验室 检验中心 医疗LIS源码

LIS系统能够自动处理大量的医学数据&#xff0c;包括样本采集、样本处理、检测分析、报告生成等。它能够快速、准确地进行化验检测&#xff0c;提高医院的运营效率。LIS系统还提供了丰富的数据分析功能&#xff0c;能够对医院化验室的业务流程进行全面、细致的监控。 LIS系统优…

【SpringBoot篇】详解Bean的管理(获取bean,bean的作用域,第三方bean)

文章目录 &#x1f354;Bean的获取&#x1f384;注入IOC容器对象⭐代码实现&#x1f6f8;根据bean的名称获取&#x1f6f8;根据bean的类型获取&#x1f6f8;根据bean的名称和类型获取 &#x1f384;Bean的作用域⭐代码实现&#x1f388;注意 &#x1f384;第三方Bean⭐代码实现…

iPortal内置Elasticsearch启动失败的几种情况——Linux

作者&#xff1a;yx 文章目录 前言一、端口占用二、ES启动过慢三、磁盘占用过高&#xff0c;导致ES变为只读模式 前言 在Linux环境启动iPortal后有时会出现搜索异常的情况&#xff0c;如下截图&#xff0c;这是因为Elasticsearch&#xff08;以下简称“ES”&#xff09;没启动…

【Midjourney】Midjourney根据prompt提示词生成人物图片

目录 &#x1f347;&#x1f347;Midjourney是什么&#xff1f; &#x1f349;&#x1f349;Midjourney怎么用&#xff1f; &#x1f514;&#x1f514;Midjourney提示词格式 Midjourney生成任务示例 例1——航空客舱与乘客 prompt prompt翻译 生成效果 大图展示 细节大…

K8s实战-init容器

概念&#xff1a; 初始化容器的概念 比如一个容器A依赖其他容器&#xff0c;可以为A设置多个 依赖容易A1&#xff0c;A2&#xff0c;A3 A1,A2,A3要按照顺序启动&#xff0c;A1没有启动启动起来的 话&#xff0c;A2,A3是不会启动的&#xff0c;直到所有的静态容器全 部启动完毕…

Python数据分析之Pandas的数据加载与预处理

一、数据分析 数据分析就是让看似杂乱无章的数据产生价值&#xff0c;通过数据的筛选、汇总等等操作将数据背后的信息集中和提炼出来&#xff0c;最终分析出一个结果或预测出事件的变化规律。 二、数据清洗 数据加载与预览 1、去除/填充有缺失的数据 2、去除/修改格式错误或…

ChatGPT4.0(中文版)国内无限制免费版(附网址)

ChatGPT&#xff0c;由OpenAI开发的人工智能语言模型。它是你的数字对话伙伴&#xff0c;无论你有何问题或需要什么帮助&#xff0c;它都能提供有用的信息。 经过不断的研发和更新&#xff0c;ChatGPT的性能和功能得到了显著提升。现在&#xff0c;我们将重点介绍ChatGPT的两个…

C#高级 08Json操作

1.概念 Json是存储和交换文本信息的语法。类似于XML。Json比XML更小、更快、更易解析。Json与XML一样是一种数据格式。Json是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。Json采取完全独立于语言的文本格式&#xff0c; 但是也使用了类似于C语言的习惯。这些特性使…

创建VLAN及VLAN间通信

任务1、任务2、任务3实验背景&#xff1a; 在一家微型企业中&#xff0c;企业的办公区域分为两个房间&#xff0c;一个小房间为老板办公室&#xff0c;一个大房间为开放办公室&#xff0c;财务部和销售部的员工共同使用这个办公空间。我们需要通过VLAN的划分&#xff0c;使老板…

3D视觉-激光三角测量法的分类

按照入射激光光束和被测物体表面法线的角度关系&#xff0c;一般分为直射式和斜射式两种方式。 1&#xff09;直射式测量 如图所示&#xff0c;激光器发出的光线&#xff0c;经会聚透镜聚焦后垂直入射到被测物体表面上&#xff0c;物体移动或者其表面变化&#xff0c;导致入射…

elasticsearch系列四:集群常规运维

概述 在使用es中如果遇到了集群不可写入或者部分索引状态unassigned&#xff0c;明明写入了很多数据但是查不到等等系列问题该怎么办呢&#xff1f;咱们今天一起看下常用运维命令。 案例 起初我们es性能还跟得上&#xff0c;随着业务发展壮大&#xff0c;发现查询性能越来越不…

鸿蒙开发(二)- 鸿蒙DevEco3.X开发环境搭建

上篇说到&#xff0c;鸿蒙开发目前势头旺盛&#xff0c;头部大厂正在如火如荼地进行着&#xff0c;华为也对外宣称已经跟多个厂商达成合作。目前看来&#xff0c;对于前端或客户端开发人员来说&#xff0c;掌握下鸿蒙开发还是有些必要性的。如果你之前是从事Android开发的&…

Jackson ImmunoResearch纳米二抗(Nano Secondary Antibodies)

驼科&#xff0c;如羊驼和美洲驼&#xff0c;会产生一类独特的仅由重链组成的抗体。而抗原结合片段(Fab)&#xff0c;也称为仅可变重链片段抗体(Variable Heavy-Chain only fragment antibodies&#xff0c;VHH片段)&#xff0c;或纳米抗体&#xff0c;是一种新型抗体形式。凭借…