一、事件是电脑输入设备与页面进行交互的响应。

二、事件的注册(分为动态和静态两种)

概念:

告诉浏览器,当事件响应后要执行哪些操作代码,也称为绑定。

静态事件注册:

通过html标签的事件属性直接赋于事件响应后的代码

动态事件注册:

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

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

    三、常用的事件:

    onload:页面加载完成后,常用于做页面js代码的初始化操作
    静态: ```java

  1. ```java
  2. <script type="text/javascript">
  3. //定义一个 onload function
  4. function onloadfun()
  5. {
  6. alert("静态注册onload事件")
  7. //所有代码放这里
  8. };
  9. </script>
  10. <body onload="onloadfun()">

image.png
动态:

  1. window.onload =function ()
  2. {
  3. alert("动态注册onload事件");
  4. }

image.png

onclick:常用于按钮的点击响应操作
静态:

  1. <script>
  2. function onclickfun()
  3. {
  4. alert("静态注册onclick事件");
  5. }
  6. </script>
  7. <button onclick="onclickfun();">按钮1</button>

当点击按钮1时,会出现:
image.png

动态:

  1. <script>
  2. window.onload = function ()
  3. {//1.获取标签对象
  4. var btnObj = document.getElementById("btn001");
  5. /*document是js语言提供的一个对象,实际上是这整个页面里所有的内容
  6. * document.getElementById即在整个页面中通过id属性获取标签*/
  7. //2. 通过标签对象.事件名 = function(){}
  8. btnObj.onclick = function (){
  9. alert("动态注册onclick事件");
  10. };
  11. }
  12. </script>
  13. <button id="btn001">按钮2</button>

当按下按钮2 时,会出现:
image.png
onblur:常用于输入框失去焦点后验证其输入内容是否合法
什么是失去焦点?
image.png
点第一个文本框时就是聚焦了,点其他地方就失去焦点了

静态:

  1. <script type="text/javascript">
  2. //静态
  3. function onblurfun()
  4. {
  5. console.log("静态onblur事件");
  6. /*console是控制台对象,是由JavaScript语言提供
  7. ,用来向浏览器的控制器打印输出,用于测试使用*/
  8. //log是打印方法
  9. };
  10. </script>
  11. <body>
  12. 用户名:<input type="text" onblur="onblurfun()"></br>
  13. 密码:<input type="text" id="password">
  14. </body>

多次点击用户名的文本框后,在浏览器控制台有onblur事件次数的记录
image.png

动态:

  1. <script>
  2. window.onload =function ()
  3. {
  4. var passwordObj = document.getElementById("password");
  5. passwordObj.onblur = function ()
  6. {
  7. console.log("动态onblur事件");
  8. }
  9. }
  10. </script>
  11. <body>
  12. 用户名:<input type="text" onblur="onblurfun()"></br>
  13. 密码:<input type="text" id="password">
  14. </body>

多次点击用户名和密码的文本框后,在浏览器控制台有onblur事件次数的记录
image.png

onchange: 常用于下拉列表和输入框内容发生改变后操作
静态:

  1. <script>
  2. function onchangefun()
  3. {
  4. alert("国籍已修改")
  5. }
  6. </script>
  7. <body>
  8. <select onchange="onchangefun()">
  9. <option>--请选择你的国籍--</option>
  10. <option>中国</option>
  11. <option>美国</option>
  12. <option>日本</option>
  13. </select>
  14. </body>

当点击不同的选项时会出现:
image.png

动态:

  1. <script>
  2. window.onload = function ()
  3. {
  4. var change = document.getElementById("007")
  5. change.onchange = function (){
  6. alert("学科已修改")
  7. }
  8. }
  9. </script>
  10. <body>
  11. <select id ="007">
  12. <option>--请选择你的学科--</option>
  13. <option>物理</option>
  14. <option>化学</option>
  15. <option>生物</option>
  16. </select>
  17. </body>

当点击不同的选项时会出现:
image.png
onsubmit: 常用于表单提交前,验证所有表单项是否合法

静态:

  1. <script type="text/javascript">
  2. function onsubmitFun()
  3. {
  4. alert("静态注册onsubmit事件");
  5. alert("当发现不合法时阻止提交");
  6. return false;
  7. }
  8. </script>
  9. <body>
  10. <form action="www.baidu.com" method="get" onsubmit="return onsubmitFun()">
  11. <input type="submit" value="静态注册提交"/>
  12. </form>
  13. </body>

image.png

image.png
image.png

动态:

  1. <script>
  2. window.onload = function ()
  3. {
  4. var submit = document.getElementById("id008");
  5. submit.onsubmit = function ()
  6. {
  7. alert("动态注册onsubmit事件");
  8. alert("当发现不合法时阻止提交");
  9. return false;
  10. }
  11. }
  12. </script>
  13. <body>
  14. <form action="www.baidu.com" id="id008">
  15. <input type="submit" value="动态注册提交"/>
  16. </form>
  17. </body>

image.png