JS事件监听

news/2024/7/7 19:25:46

目录

事件监听

 事件监听案例


事件监听

  • 事件:HTML事件是发生在HTML元素上的“事情”
    • 按钮点击
    • 鼠标移动到元素上
    • 按下键盘按键
  • 事件监听:JS可以在事件被检测到时执行代码
  • 事件绑定
    • 方法一:通过HTML标签中的事件属性进行绑定
      •   <input type="button" οnclick="on()" value="按钮一" />

            <script>

              function on() {

                alert("我被点了");

              }

            </script>

    • 方法二:

      • 通过DOM元素属性进行绑定

        •     <input type="button" id="btn" value="按钮二" />

              <script>

                document.getElementById("btn").onclick = function () {

                  alert("我被点了");

                };

              </script>

具体代码如下:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>事件绑定</title>
  </head>
  <body>
    <input type="button" onclick="on()" value="按钮一" /> 通过HTML标签中的事件属性进行绑定<br>
    <input type="button" id="btn" value="按钮二" /> 通过DOM元素属性进行绑定
    <script>
      function on() {
        alert("按钮一我被点了");
      }
    </script>
    <script>
      document.getElementById("btn").onclick = function () {
        alert("按纽二我被点了");
      };
    </script>
  </body>
</html>

运行效果:

点击按钮一

点击按钮二 

 

  •  常见事件
    • 事件名说明
      onclick鼠标单击事件
      onblur元素失去焦点
      onfocus元素获得焦点
      onload某个页面或图像完成加载时
      onsubmit当表单提交时触发该事件
      onkeydown某个键盘的键被按下
      onmouseover鼠标被移到某元素之上
      onmouseout鼠标从元素上移开

 事件监听案例

实现效果

  1. 点击’点亮‘按钮 点亮灯泡,点击’熄灭‘按钮 熄灭灯泡
  2. 输入框鼠标聚焦后 展示小写 鼠标离焦后展示大写
  3. 点击’全选‘ 按钮使所有复选框呈现被选中的状态 点击’反选‘ 按钮使所有复选框呈现取消勾选的状态

具体实现代码如下:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>JS-事件-案例</title>
  </head>
  <body>
    <img src="img/off.gif" id="img" /><br />
    <input type="button" name="button1" id="b1" value="点亮" onclick="on()" />
    <input
      type="button"
      name="button"
      id="b2"
      value="熄灭"
      onclick="off()"
    /><br />
    <input
      type="text"
      name="text"
      id="text"
      value="HELLO JS"
      onfocus="lower()"
      onblur="upper()"
    /><br />
    <input type="checkbox" name="hobby" value="电影" />电影
    <input type="checkbox" name="hobby" value="旅游" />旅游
    <input type="checkbox" name="hobby" value="游戏" />游戏
    <br />
    <input type="button" value="全选" onclick="checkAll()" />
    <input type="button" value="反选" onclick="reverse()" />

    <script>
      // 设置对应的方法实现不同的操作
      // 1.点击'点亮'按钮 点亮灯泡,点击'熄灭'按钮 熄灭灯泡
      // 触发onclick事件
      function on() {
        // 获取img元素对象
        var img = document.getElementById("img");
        // 设置属性
        img.src = "img/on.gif";
      }
      function off() {
        // 获取img元素对象
        var img = document.getElementById("img");
        // 设置src属性
        img.src = "img/off.gif";
      }
      // 2.输入框鼠标聚焦后 展示小写 鼠标离焦后展示大写
      // 触发onblur 和onfocus事件
      // 常见对应事件触发的函数
      function lower() {
        // 获取输入框元素对象;
        var text = document.getElementsByName("text");
        for (let i = 0; i < text.length; i++) {
          const element = text[i];
          // 查询W3C网站得到改变String字符串大小写的方法
          element.value = element.value.toLowerCase();
        }
      }
      function upper() {
        var text = document.getElementsByName("text");
        for (let i = 0; i < text.length; i++) {
          const element = text[i];
          element.value = element.value.toUpperCase();
        }
      }
      // 点击'全选' 按钮使所有复选框呈现被选中的状态 点击'反选' 按钮使所有复选框呈现取消勾选的状态
      function checkAll() {
        var checks = document.getElementsByName("hobby");
        for (let i = 0; i < checks.length; i++) {
          const element = checks[i];
          element.checked = true;
        }
      }
      function reverse() {
        var checks = document.getElementsByName("hobby");
        for (let i = 0; i < checks.length; i++) {
          const element = checks[i];
          element.checked = false;
        }
      }
    </script>
  </body>
</html>


http://lihuaxi.xjx100.cn/news/1305415.html

相关文章

网棒球在国际上的发展·棒球1号位

网棒球在国际上的发展 1. 网棒球概述 网棒球的起源和基本概念&#xff0c;包括它的历史背景、主要特点、比赛方式以及主要规则。 我们将先从网棒球的起源和历史背景开始介绍。网棒球起源于18世纪的英国&#xff0c;当时是作为一种贵族运动而流行起来。后来随着时间的推移&…

Vue3中的Proxy是什么,如何使用它来提高性能?

今天我们来聊聊Vue 3中的一个神秘武器——Proxy。在编程的世界里&#xff0c;Proxy就像你的“超能力”助手&#xff0c;让你在应对性能挑战时&#xff0c;像个超级英雄一样无所不能。 首先&#xff0c;我们来揭开Proxy的神秘面纱。Proxy主要用于在JavaScript中处理对象的读写操…

Ninja is required to load C++ extensions | 问题解决

总共三个方法尝试 第一步确认c装了没 没有的话执行&#xff1a;sudo apt-get install build-essential 第二步执行pip pip install ninja 第三步终极方法 wget https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip sudo unzip ninja-linux.z…

ubuntu安装MobaXterm和WPS

文章目录 ubuntu安装MobaXtermi386 架构wine操作步骤 ubuntu安装WPS操作步骤WPS版本知识补充 ubuntu安装MobaXterm i386 架构 sudo dpkg --add-architecture i386 是一个Linux系统中的命令&#xff0c;用于添加一个新的架构&#xff08;architecture&#xff09;支持到当前系统…

YOLO系列v1-v8

YOLO是Region-free方法&#xff0c;只需要一次扫描&#xff0c;也被称为单阶段&#xff08;1-stage&#xff09;模型。而Region-based方法方法&#xff0c;如mask-rcnn &#xff0c;被称为两阶段&#xff08;2-stage&#xff09;方法。 YOLOv1-v3是原作者&#xff0c;v4和v7是…

代码随想录第六天|哈希表

代码随想录第六天 Leetcode 242 有效的字母异位词Leetcode 349 两个数组的交集Leetcode 202 快乐数Leetcode 1 两数之和 Leetcode 242 有效的字母异位词 题目链接: 有效的字母异位词 自己的思路:自己没想到&#xff0c;多练&#xff01; 正确思路:定义一个长度为26的数组res&…

FastDDS 源码剖析:FastDDS 概述

目录 FastDDS 介绍 什么是 FastDDS&#xff1a; 为什么使用 FastDDS&#xff1a; 如何使用 FastDDS&#xff1a; FastDDS 的缺点 FastDDS 介绍 FastDDS 是一个高性能、可扩展的开源实时传输层协议&#xff08;RTPS&#xff09;实现&#xff0c;由 eProsima 公司开发。它遵…

springboot整合shiro实现认证和授权功能改进

目录 解决问题一 解决问题二 新的问题 第一步&#xff1a;添加依赖 第二步&#xff1a;添加redis配置类 第三步&#xff1a;创建redis工具类 第四步&#xff1a;创建用于操作用户权限的redis仓库 第五步&#xff1a;保存用户权限到redis 上一篇文章springboot整合shiro…