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当鼠标的滚轮运行时

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PCIe 6.0生态业内进展分析总结

上一篇&#xff0c;我们针对PCIe 6.0的功能更新与实现挑战做了简单的分析与总结。更多详细内容可以参考&#xff1a; 扩展阅读&#xff1a;浅析PCIe 6.0功能更新与实现的挑战 那么&#xff0c;PCIe 6.0已经发布了一段时间了&#xff0c;业内硬件支持PCIe 6.0目前有哪些进展呢…

工具网站DefiLlama全攻略:从零学习链上数据使用与发现

DefiLlama 是一个 DeFi(去中心化金融)信息聚合器,其主要功能是提供各种 DeFi 平台的准确、全面数据。DefiLlama 致力于在不受广告或赞助内容影响的情况下为用户提供这些数据,以确保信息内容的透明度和公正性,该平台聚合来自多个区块链的数据,让用户能够全面了解 DeFi 格局…

【MATLAB】【数字信号处理】线性卷积和抽样定理

已知有限长序列&#xff1a;xk1,2,1,1,0,-3, hk[1,-1,1] , 计算离散卷积和ykxk*h(k) 。 程序如下&#xff1a; function [t,x] My_conv(x1,x2,t1,t2,dt) %文件名与函数名对应 %自写的卷积函数 x conv(x1,x2)*dt; t0 t1(1) t2(1); L length(x1) length(x2)-2; t t0:dt…

街道洗扫车VR虚拟仿真展示创新了培训方式

吸污车用于收集处理城市中的污水、污泥&#xff0c;起到疏通管道的作用&#xff0c;特别是洪涝灾害时是重要的清理工具。吸污车由于内部结构复杂、工艺原理繁琐且造价成本高&#xff0c;因此传统的吸污车作业培训难以达到满意效果。VR虚拟仿真技术的出现&#xff0c;给企业提供…

【Docker】从Logo开始了解什么是docker

欢迎来到《小5讲堂》&#xff0c;大家好&#xff0c;我是全栈小5。 这是2024年第x篇文章&#xff0c;此篇文章是《Docker容器》序列文章&#xff0c;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 在实际工作中&#xff0c;实际上有接触过容…

burpsuite 爆破

靶场搭建:phpstudy的安装与靶场搭建 - junlin623 - 博客园 (cnblogs.com) 账号字典:XXTK: 一些弱口令、fuzz字典 (gitee.com) 网盘链接:https://pan.baidu.com/s/1v5pAwaTwoeCnJgkUXf3iLQ?pwd=mllm 提取码:mllm --来自百度网盘超级会员V2的分享 一、暴力破解 - 基于…

PyTorch 入门学习数据操作之创建

简介 在深度学习中&#xff0c;我们通常会频繁地对数据进行操作&#xff1b;要操作一般就需要先创建。 官方介绍 The torch package contains data structures for multi-dimensional tensors and defines mathematical operations over these tensors. Additionally, it pr…

pytorch机器学习各种激活函数总结(不完整学习更新中~)

pytorch各种激活函数总结 0.思维导图预览1. ReLU函数1.1 改进版ReLU6函数 2. Sigmoid函数3. Softmax函数4. Tanh函数5.&#xff08;学习后更新&#xff09; 0.思维导图预览 1. ReLU函数 ReLU&#xff08;Rectified Linear Unit&#xff09;线性整流函数 其公式为&#xff1a; …

新手学习易语言中文编程,易语言从入门到精通教学

一、教程描述 本套教程共有100集&#xff0c;并且有大量的课件资料&#xff0c;可能是截止到目前为止&#xff0c;最为全面系统的易语言教程了&#xff0c;其中有些视频是.exe文件&#xff0c;可以下载到本地播放。本套易语言教程&#xff0c;大小14.59G&#xff0c;共有6个压…

网络摄像机的网络连接

网络摄像机的网络连接 1. 网络连接2. 网络直通线和网络交叉线的制作方法References 1. 网络连接 网络摄像机完成安装后&#xff0c;需要进行功能的配置及参数的设置&#xff0c;您可以通过浏览器进行相关功能的配置。 有线网络连接 左侧为通过网络直通线连接的示意图&#x…

十年磨一剑

随着不停的优化和改进&#xff0c;JRT开发已经接近尾声&#xff0c;计划过年时候低调发布JRT1.0&#xff0c;框架目标&#xff1a;只做信创下的医疗龙头而不是信创下的苟活着。 十年前&#xff0c;我从南京踏上去沈阳的火车&#xff0c;去东北参加三方协议的启航计划&#xff…

VM与欧姆龙PLC通讯设置

1、欧姆龙PLC 进行网口通讯&#xff0c;协议用的Fins tcp&#xff0c;也可以用Fins UDP。 2、主要步骤如下&#xff1b; step1&#xff1a;设置IP地址、端口号默认是9600&#xff0c;根据需要设置寄存器首地址和寄存器数量 step2&#xff1a;鼠标移动到某个地址下&#xff0c…

linux usb 驱动介绍

通用串行总线(USB)是一个在主机和许多外设之间的连接. 最初它被创建来替代许多慢速和不同的总线- 并口, 串口, 和键盘连接--有一个单个的所有设备都可以连接的总线类型. [45] USB 已经成长超出了这些 慢速连接并且现在支持几乎每种可以连接到 PC 的设备. USB 规范的最新版本增加…

机器学习实践

1.波士顿房价预测 波士顿房屋的数据于1978年开始统计&#xff0c;共506个数据点&#xff0c;涵盖了波士顿不同郊区房屋的14种特征信息。 在这里&#xff0c;选取房屋价格&#xff08;MEDV&#xff09;、每个房屋的房间数量&#xff08;RM&#xff09;两个变量进行回归&#xff…

视频剪辑方法:一键批量转码,视频转GIF教程详解

在数字媒体时代&#xff0c;视频剪辑已经成为一项必备技能。无论是专业人士还是普通用户&#xff0c;都要对视频进行剪辑、转码和制作。但是视频剪辑并不简单&#xff0c;要掌握一定的技巧和知识。下面一起来看云炫AI智剪简单易学的视频剪辑方法&#xff1a;一键批量转码和视频…

Nginx 开启目录浏览功能

目录 1.没开启前的页面效果 2.开启目录浏览 1.没开启前的页面效果 这是我的一个网站页面&#xff0c;没配置目录浏览功能前的效果 2.开启目录浏览 来到 server 配置文件下 /etc/nginx/conf.d, 然后编辑配置文件&#xff0c;保存之后查看语法是否正确 autoindex on; # 开启目…

Javaweb之Mybatis的基础操作之新增和更新操作的详细解析

1.4 新增 功能&#xff1a;新增员工信息 1.4.1 基本新增 员工表结构&#xff1a; SQL语句&#xff1a; insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time) values (songyuanqiao,宋远桥,1,1.jpg,2,2012-10-09,2,2022-10-…

【C#】网址不进行UrlEncode编码会存在一些问题

欢迎来到《小5讲堂》&#xff0c;大家好&#xff0c;我是全栈小5。 这是2024年第3篇文章&#xff0c;此篇文章是C#知识点实践序列文章&#xff0c;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 目录 前言数据丢失效果请求端代码接口端代码…

Profinet转Modbus网关助你畅享智能工业

Modbus转Profinet网关&#xff08;XD-MDPN100/200&#xff09;具有广泛的应用价值。无论是汽车制造、机械加工还是能源管理&#xff0c;都可以通过使用该网关&#xff0c;实现设备之间的高效通信。其次&#xff0c;Modbus转Profinet网关&#xff08;XD-MDPN100/200&#xff09;…

大数据平台数据治理与建设方案:PPT全文90页,附下载

关键词&#xff1a;数据治理&#xff0c;大数据&#xff0c;数据治理平台&#xff0c;数据治理顶层设计&#xff0c;大数据治理&#xff0c;数据治理建设 一、数据治理建设需求分析 1、业务需求和目标&#xff1a;首先&#xff0c;明确业务需求和目标是非常重要的。数据治理项…