JavaScript中添加监听句柄的方式

 更新时间:2022年02月25日 09:42:28   作者:酷尔。  
这篇文章主要介绍了JavaScript中添加监听句柄的方式,监听就是触发某事件之后做出的响应,监听句柄是触发某相应的条件,下面关于添加监听句柄的方式的详细内容,需要的朋友可以参考一下,希望对你有所帮助

前言:

监听就是触发某事件之后做出的响应,监听句柄是触发某相应的条件

一、效果展示

鼠标聚焦、鼠标移开、鼠标点击等等都可以作为监听句柄

二、句柄合集

  •     onchange    HTML 元素改变
  •     onclick    用户点击 HTML 元素
  •     onmouseover    用户在一个HTML元素上移动鼠标
  •     onmouseout    用户从一个HTML元素上移开鼠标
  •     onkeydown    用户按下键盘按键
  •     onload    浏览器已完成页面的加载
  •     onclick 失去焦点
  •     onfocuse 获取焦点

三、添加监听的方式

添加监听的方式有两种:

1.将事件与函数绑定在一起

  • 例如将点击监听句柄与f1函数绑定起来
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        function f1()
        {
            element=document.getElementById("myimage")
            if(element.src.match("bulbon"))
            {
                element.src="../pic_bulboff.gif"
            }
            else{
                element.src="../pic_bulbon.gif"
            }
        }
    </script>
    <img id="myimage" src="../pic_bulboff.gif" onclick="f1()" alt="" width="100" height="150">
    <p>点击灯泡开关灯</p>
</body>
</html>

2.先获取元素再添加事件

例如:

           var x = document.getElementById("myBtn");
        x.addEventListener("mouseover", myFunction);

将鼠标覆盖句柄与函数myFunction绑定在一起

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>

</head>
    <body>
            <p>实例使用 addEventListener() 方法在同一个按钮中添加多个事件。</p>
            <button id="myBtn">点我</button>
            <p id="demo"></p>
    <script>
            var x = document.getElementById("myBtn");
            x.addEventListener("mouseover", myFunction);
            x.addEventListener("click", mySecondFunction);
            x.addEventListener("mouseout", myThirdFunction);
            function myFunction() {
                document.getElementById("demo").innerHTML += "Moused over!<br>"
            }
            function mySecondFunction() {
                document.getElementById("demo").innerHTML += "Clicked!<br>"
            }
            function myThirdFunction() {
                document.getElementById("demo").innerHTML += "Moused out!<br>"
            }
            // 监听函数如何传递参数
            document.getElementById("myBtn").addEventListener("click", function() {
                myFunction(p1, p2);
            });
            function myFunction(a, b) {
                 var result = a * b;
                 document.getElementById("demo").innerHTML = result;
            }
    </script>

    </body>
</html>

总结:

两种监听方式均可以达到效果,个人认为先获取后添加的句柄监听使用更为方便。

到此这篇关于JavaScript中添加监听句柄的方式的文章就介绍到这了,更多相关JavaScript监听句柄内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 微信小程序学习笔记之文件上传、下载操作图文详解

    微信小程序学习笔记之文件上传、下载操作图文详解

    这篇文章主要介绍了微信小程序学习笔记之文件上传、下载操作,结合实例形式分析了微信小程序图片文件传输的原理、步骤及后台php操作相关实现技巧,并结合图文形式予以详细说明,需要的朋友可以参考下
    2019-03-03
  • CascadeView级联组件实现思路详解(分离思想和单链表)

    CascadeView级联组件实现思路详解(分离思想和单链表)

    本文介绍自己最近做省市级联的类似的级联功能的实现思路,为了尽可能地做到职责分离跟表现与行为分离,这个功能拆分成了2个组件并用到了单链表来实现关键的级联逻辑,下一段有演示效果的gif图
    2016-04-04
  • 封装的dialog插件 基于bootstrap模态对话框的简单扩展

    封装的dialog插件 基于bootstrap模态对话框的简单扩展

    这篇文章主要介绍了基于bootstrap模态对话框的简单扩展,bootstrap-mzDialog插件的封装,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • javascript下用键盘控制层的移动的代码

    javascript下用键盘控制层的移动的代码

    javascript下用键盘控制层的移动的代码...
    2007-04-04
  • js实现简单的放大镜效果

    js实现简单的放大镜效果

    这篇文章主要为大家详细介绍了js实现简单的放大镜效果,可随意更改,放大区域的大小、比例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • javascript 三种编解码方式

    javascript 三种编解码方式

    js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent
    2010-02-02
  • 微信小程序开发之数据存储 参数传递 数据缓存

    微信小程序开发之数据存储 参数传递 数据缓存

    本文主要介绍了微信小程序开发之数据存储、参数传递、数据缓存的相关知识。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-04-04
  • 在Js页面通过POST传递参数跳转到新页面详解

    在Js页面通过POST传递参数跳转到新页面详解

    这篇文章主要给大家介绍了关于在Js页面通过POST传递参数跳转到新页面的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-08-08
  • 原生JS实现贪吃蛇小游戏

    原生JS实现贪吃蛇小游戏

    这篇文章主要为大家详细介绍了原生JS贪吃蛇小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Javascript异步流程控制之串行执行详解

    Javascript异步流程控制之串行执行详解

    这篇文章主要给大家介绍了关于Javascript异步流程控制之串行执行的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09

最新评论