• JavaScript DOM文档事件


    一、事件概述:

    HTML事件可以触发浏览器中的行为,比方说当用户点击某个 HTML 元素时启动一段 JavaScript。

    二、窗口事件:

    1、分类:

    • onblur                    当窗口失去焦点时运行脚本 。
    • onfocus                 当窗口获得焦点时运行脚本。
    • onload                   当文档加载之后运行脚本。
    • onresize                当调整窗口大小时运行脚本。
    • onstorage              当 Web Storage 区域更新时(存储空间中的数据发生变化时)运行脚本。

    2、案例演示:

     2.1当窗口失去焦点时,输出“窗口失去焦点”:

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <script>
    9. window.onblur = function () {
    10. console.log("窗口失去焦点");
    11. };
    12. script>
    13. body>
    14. html>

     2.2当窗口获取焦点时,输出“窗口获取焦点”:

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <script>
    9. window.onfocus = function () {
    10. console.log("窗口获取焦点");
    11. };
    12. script>
    13. body>
    14. html>

     2.3当页面文档加载完成后,输出"Hello, World":

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <script>
    9. window.onload = function () {
    10. console.log("Hello,World");
    11. };
    12. script>
    13. body>
    14. html>

     2.4当调整窗口大小时,输出"窗口大小正在改变":

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <script>
    9. window.onresize = function () {
    10. console.log("窗口大小正在改变");
    11. };
    12. script>
    13. body>
    14. html>

     三、表单事件

    1、含义:

    表单事件在HTML表单中触发 (适用于所有 HTML 元素,但该HTML元素需在form表单内)。

    2、分类:

    • onblur                    当元素失去焦点时运行脚本。
    • onfocus                 当元素获得焦点时运行脚本。
    • onchange              当元素改变时运行脚本。
    • oninput                  当元素获得用户输入时运行脚本。
    • oninvalid               当元素无效时运行脚本。
    • onselect                当选取元素时运行脚本。
    • onsubmit               当提交表单时运行脚本。

    3、案例演示:

     3.1当文本框获取焦点,文本框背景为红色,当文本框失去焦点,文本框背景为黄色:

    1. DOCTYPE html>

     3.2当文本框内容改变时,鼠标离开文本框,自动将文本框的内容输出到控制台:

    1. DOCTYPE html>

     3.3当文本框内容改变时,立即将改变的内容输出到控制台:

    1. DOCTYPE html>

     3.4如果单击“submit”,则不填写文本字段,将发生警报消息:

    1. DOCTYPE html>

     3.5当选中文本框的内容时,输出“您已经选择了文本框内容!”:

    1. DOCTYPE html>

     3.6当提交表单的时候,在控制台输出“表单提交”:

    1. DOCTYPE html>

    四、键盘事件

    1、含义:

    通过键盘触发事件。

    2、分类:

    • onkeydown                      当按下按键时运行脚本。
    • onkeyup                           当松开按键时运行脚本。
    • onkeypress                      当按下并松开按键时运行脚本。

    3、案例演示:

     3.1当键盘按下判断当前的按键是不是 a ,如果是就输出true,否则输出false:

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <script>
    9. /* 当键盘按下判断当前的按键是不是 a ,如果是就输出true,否则输出false */
    10. window.onkeydown = function (event) {
    11. /* 解决兼容性问题 */
    12. event = event || window.event;
    13. if (event.keyCode == 65) {
    14. console.log("true");
    15. } else {
    16. console.log("false");
    17. }
    18. };
    19. script>
    20. body>
    21. html>

     3.2使div可以根据不同的方向键向不同的方向移动:

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <div id="box" style="width: 100px;height: 100px;background: red;position: absolute;">div>
    9. <script>
    10. var box = document.getElementById("box");
    11. //为document绑定一个按键按下的事件
    12. document.onkeydown = function (event) {
    13. event = event || window.event;
    14. // 定义移动速度
    15. var speed = 10;
    16. // 选择移动方向
    17. switch (event.keyCode) {
    18. case 37:
    19. box.style.left = box.offsetLeft - speed + "px";
    20. break;
    21. case 39:
    22. box.style.left = box.offsetLeft + speed + "px";
    23. break;
    24. case 38:
    25. box.style.top = box.offsetTop - speed + "px";
    26. break;
    27. case 40:
    28. box.style.top = box.offsetTop + speed + "px";
    29. break;
    30. }
    31. };
    32. script>
    33. body>
    34. html>

     五、鼠标事件

    1、含义:

    通过鼠标触发事件。

    2、分类:

    • onclick                           当单击鼠标时运行脚本。
    • ondblclick                      当双击鼠标时运行脚本。
    • onmousedown               当按下鼠标按钮时运行脚本。
    • onmouseup                    当松开鼠标按钮时运行脚本。
    • onmousemove               当鼠标指针移动时运行脚本。
    • onmouseover                 当鼠标指针移至元素之上时运行脚本,不可以阻止冒泡。
    • onmouseout                   当鼠标指针移出元素时运行脚本,不可以阻止冒泡。
    • onmouseenter                当鼠标指针移至元素之上时运行脚本,可以阻止冒泡。
    • onmouseleave                当鼠标指针移出元素时运行脚本,可以阻止冒泡。
    • onmousewheel               当转动鼠标滚轮时运行脚本。
    • onscroll                           当滚动元素的滚动条时运行脚本。

    3、案例演示:

     3.1创建一个正方形div,默认颜色为黑色,当鼠标移入div,背景颜色变为红色,当鼠标移出div,背景颜色变为绿色:

    1. DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>title>
    6. head>
    7. <body>
    8. <div id="box" style="width: 100px;height: 100px;background: black;">div>
    9. <script>
    10. var box = document.getElementById("box");
    11. /* 当鼠标移入div,背景颜色变为红色 */
    12. box.onmouseenter = function () {
    13. this.style.background = "red";
    14. };
    15. /* 当鼠标移出div,背景颜色变为绿色 */
    16. box.onmouseleave = function () {
    17. this.style.background = "green";
    18. };
    19. script>
    20. body>
    21. html>

  • 相关阅读:
    JSR303和拦截器
    Java 最常见的面试题:常用的 jvm 调优的参数都有哪些?
    Anaconda安装及配置
    Android | ArcGIS入门
    大二Web课程设计——动漫海贼王(可以很好的应付老师的作业)
    智慧校园-档案管理系统总体概述
    vue状态管理工具
    SparkStreaming (六) --------- 优雅关闭
    如何快速构建研发效能度量的指标体系?
    如何将不同类别信息发送到kafka的不同通道中
  • 原文地址:https://blog.csdn.net/m0_67942533/article/details/126743405