如何通过js实现添加事件监听和移除事件监听

如何通过js实现添加事件监听和移除事件监听,第1张

直接用js实现比较麻烦,不同版本的浏览器(主要是低版本的)支持的方法会不一样。吵做

建议使用jquery实现:

添加事件例:

$("button").on("click", function(){

    console.log("clicked")

})

移除事件例:

$("升链衡button").off("click")

文唤拍档链接:http://api.jquery.com/on/

给dom元素添加旅者事件监听一般有两种方式:

一、函数

<input type="button" onclick="clickme()" id="clickme"隐闷 value="点击我">

<script>

    function clickme(){

        alert("我被点击了")

    }

</script>

二、为指定对象添加事件处理

<input type="button" onclick="clickme()" id="clickme" value="点击我">

 <script>

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

         alert("hello world")

    拆携薯 }

 </script>

你这个问题全部内容应该是如下吧:

在视频播放的时候,能够用on监听事件的触姿梁首发,如下:

player.on('pause'渣唤,function(){console.log('视频暂停');

})

player.on('ended',function(){console.log('视频结束')

})

这个是什么原理,怎么自定义类似pause、ended的事件,并能够用on监听?麻烦迹数指教

相当于来说你要维护一个事件队列。

player对象大概有这么些属性

{on: func(key, callback),

emit: func(key),

events: object

}

events是一个对象,数据结构如下:

{pause: [func, func]

}

调用on函数时,把event的key以及callback添加到events中。

调用emit函数表示相应事件触发,根据相应的key从events中获取相应的callback数组,依次执行函数。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11977239.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存