当前位置: 首页 > article >正文

js基础之事件监听案例入门

事件绑定

在这里插入图片描述

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="button" id="but1" value="事件绑定1" onclick="on()">
    <!-- onclick 绑定一个函数 -->

    <input type="button" id="but2" value="事件绑定2">
    
</body>

<script>
    function on(){
        alert("按钮1被点击了")
    }

    document.getElementById('but2').onclick = function(){
        alert("按钮2被点击了")
    }
    // 通过id获取元素对象
</script>



</html>

效果图

在这里插入图片描述

常见事件

 参见事件有很多,这里只是抛砖引玉
在这里插入图片描述

详细的事件:
https://www.w3cschool.cn/htmltags/ref-eventattributes.html

事件监听案例

需求

1,要求灯泡关和开
2,要求输入离焦后显示为password类型
3,全选和发选功能的实现

代码和效果图

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>常见事件案例</title>
</head>
<body>
    <img id="light" src="img/off.gif"> <br>
    <input type="button" value="点亮" onclick="on()"> <input type="button"  value="熄灭" onclick="off()">

    <br> <br>

    <input type="text" id="name" value="ITCAST" onfocus="decode()" onblur="encode()">
    <br> <br>

    <input type="checkbox" name="hobby"> 电影
    <input type="checkbox" name="hobby"> 旅游
    <input type="checkbox" name="hobby"> 游戏
    <br>

    <input type="button" value="全选" onclick="checkAll()" > <input type="button" value="反选"  onclick="reverse()">

    <script>


        //1, 开灯和关灯
        //定义点亮
        function on(){

            // 获取img元素对象,然后设置src的值
            document.getElementById('light').src="img/on.gif";
        }

        //定义关灯
        function off(){
            var img = document.getElementById('light');
            img.src = "img/off.gif";

        }
        

        //2. 输入框聚焦后展示text类型,输入框离焦后显示password类型;
        function decode(){
            var type1 = document.getElementById("name");
            type1.type="text";

        }
        function encode(){
            var type2 = document.getElementById("name");
            type2.type="password";
            
        }


        //3, 全选和反选的实现
        function checkAll(){
            //获取所有复选框内容
            var hobbys = document.getElementsByName("hobby");

            //
            for (let i = 0; i < hobbys.length; i++) {
                const element = hobbys[i];
                element.checked = true;
                
            }


        }

        function reverse(){
            var hobbys = document.getElementsByName("hobby");

            for (let i = 0; i < hobbys.length; i++) {
                const element = hobbys[i];

                //type="checkbox",选择框设置是否选中
                element.checked = false;
                
            }
            

        }



    </script>
</body>
</html>

需求1开关点灯,获取元素替换图片
在这里插入图片描述

需求2离开输入框焦点显示password类型,获取元素替换类型
在这里插入图片描述

在这里插入图片描述

需求3,全选和反选,获取全部元素是个数组,遍历数组替换对应的值
在这里插入图片描述

参考文章

https://www.bilibili.com/video/BV1m84y1w7Tb


http://www.kler.cn/a/159811.html

相关文章:

  • 软件工程师简历(精选篇)
  • 测试工程师简历「精选篇」
  • 速盾:高防 CDN 和 CDN 的缓存机制都一样吗?
  • 【121. 买卖股票的最佳时机】——贪心算法/动态规划
  • Spring MVC 与 JSP 数据传输
  • 94个属于一区且接受医工交叉领域投稿的期刊汇总|个人观点·24-11-13
  • Vue3炫酷可旋转的3D地球
  • 【500强 Kubernetes 课程】第4章 dockerfile基础篇-基本语法
  • Qt Creator 11.0.3同时使用Qt6.5和Qt5.14.2
  • Kafka 的特点和优势
  • 电脑出现蓝屏提示0xc0000001错误的解决办法,解决错误代码0xc0000001
  • 基于c++版本链栈改-Python思维总结
  • Java八股文面试全套真题【含答案】-XML篇
  • CSU计算机学院2023秋C语言期中题目思路分享(前三道题)
  • 一起学docker系列之十七Docker Compose 与手动操作的比较与优势分析
  • Linux(gRPC):Ubuntu22.04安装gRPC
  • 程序员都在收藏的免费好用API接口
  • Python Pandas处理csv文件常用操作代码
  • MAC笔记本里Spyder python 的安装问题 和 虚拟环境VENV的创建
  • 大话数据结构-查找-多路查找树
  • SimplePIR——目前最快单服务器匿踪查询方案
  • 基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含pytho、JS工程源码)+数据集+模型(二)
  • 输入日期求n天后
  • 二叉树的前、中和后序遍历的递归与迭代实现
  • Springboot 项目关于版本升级到 3.x ,JDK升级到17的相关问题
  • Boost:asio捕获信号