Javascript 事件(静态注册和动态注册)

js 中的事件

什么是事件?事件是电脑输入设备与页面进行交互的响应。我们称之为事件。

事件类型

鼠标单击:例如单击button、选中checkbox和radio等元素;鼠标进入、悬浮或退出页面的某个热点:例如鼠标停在一个图片上方或者进入table的范围;
键盘按键:当按下按键或释放按键时;
HTML事件:例如页面body被加载时;在表单中选取输入框或改变输入框中文本的内容:例如选中或修改了文本框中的内容;
突变事件:主要指文档底层元素发生改变时触发的事件,如DomSubtreeModified(DOM子树修改)。

事件句柄

在这里插入图片描述

常用的事件:

onload 加载完成事件: 页面加载完成之后,常用于做页面js 代码初始化操作
onclick 单击事件: 常用于按钮的点击响应操作。
onblur 失去焦点事件: 常用用于输入框失去焦点后验证其输入内容是否合法。
onchange 内容发生改变事件: 常用于下拉列表和输入框内容发生改变后操作
onsubmit 表单提交事件: 常用于表单提交前,验证所有表单项是否合法。
在这里插入图片描述

事件的注册又分为静态注册和动态注册两种:

什么是事件的注册(绑定)?
其实就是告诉浏览器,当事件响应后要执行哪些操作代码,叫事件注册或事件绑定。

静态注册事件:通过html 标签的事件属性直接赋于事件响应后的代码,这种方式我们叫静态注册。

动态注册事件:是指先通过js 代码得到标签的dom 对象,然后再通过dom 对象.事件名= function(){} 这种形式赋于事件响应后的代码,叫动态注册

动态注册基本步骤:

1、获取标签对象
2、标签对象.事件名= fucntion(){}

onload 加载完成事件


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script type="text/javascript">
// onload 事件的方法
function onloadFun() {
alert('静态注册onload 事件,所有代码');
}
// onload 事件动态注册。是固定写法
window.onload = function () {
alert("动态注册的onload 事件");
}
script>
head>

<body>
body>
html>

onclick 单击事件


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script type="text/javascript">
function onclickFun() {
alert("静态注册onclick 事件");
}
// 动态注册onclick 事件
window.onload = function () {
// 1 获取标签对象
/*
* document 是JavaScript 语言提供的一个对象(文档)
* get 获取 * Element 元素(就是标签) * By 通过。。由。。经。。。 * Id id 属性 * * getElementById 通过id 属性获取标签对象 **/
var btnObj = document.getElementById("btn01"); // alert( btnObj ); // 2 通过标签对象.事件名= function(){} btnObj.onclick = function () { alert("动态注册的onclick 事件"); } }
script> head> <body> <button onclick="onclickFun();">按钮1button> <button id="btn01">按钮2button> body> html>

onblur 失去焦点事件


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script type="text/javascript">
// 静态注册失去焦点事件
function onblurFun() {
// console 是控制台对象,是由JavaScript 语言提供,专门用来向浏览器的控制器打印输出, 用于测试使用
// log() 是打印的方法
console.log("静态注册失去焦点事件");
}
// 动态注册onblur 事件
window.onload = function () {
//1 获取标签对象
var passwordObj = document.getElementById("password");
// alert(passwordObj);
//2 通过标签对象.事件名= function(){};
passwordObj.onblur = function () {
console.log("动态注册失去焦点事件");
}
}
script>
head>
<body>
用户名:<input type="text" onblur="onblurFun();"><br/>
密码:<input id="password" type="text" ><br/>
body>
html>

onchange 内容发生改变事件


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script type="text/javascript">
function onchangeFun() {
alert("女神已经改变了");
}
window.onload = function () {
//1 获取标签对象
var selObj = document.getElementById("sel01");
// alert( selObj );
//2 通过标签对象.事件名= function(){}
selObj.onchange = function () {
alert("男神已经改变了");
}
}
script>
head>
<body>
请选择你心中的女神:

<select onchange="onchangeFun();">
<option>--女神--option>
<option>芳芳option>
<option>佳佳option>
<option>娘娘option>
select>
请选择你心中的男神:
<select id="sel01">
<option>--男神--option>
<option>国哥option>
<option>华仔option>
<option>富城option>
select>
body>
html>

onsubmit 表单提交事件


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<script type="text/javascript" >
// 静态注册表单提交事务
function onsubmitFun(){
// 要验证所有表单项是否合法,如果,有一个不合法就阻止表单提交
alert("静态注册表单提交事件----发现不合法");
return flase;
}
window.onload = function () {
//1 获取标签对象
var formObj = document.getElementById("form01");
//2 通过标签对象.事件名= function(){}
formObj.onsubmit = function () {
// 要验证所有表单项是否合法,如果,有一个不合法就阻止表单提交
alert("动态注册表单提交事件----发现不合法");
return false;
}
}
script>
head>
<body>

<form action="http://localhost:8080" method="get" onsubmit="return onsubmitFun();">
<input type="submit" value="静态注册"/>
form>
<form action="http://localhost:8080" id="form01">
<input type="submit" value="动态注册"/>
form>
body>
html>

总结

静态注册

<script type="text/javascript">
function 函数名(){
}
</script>
<标签  事件名= 函数名 ();”>

动态注册:

<script type="text/javascript">
window.onload = function () {
//1 获取标签对象
var 标签对象= document.getElementById("id名称");//2 通过标签对象.事件名= function(){}
标签对象.事件名= function(){
}
}
</script>


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部