javascript核心技术(三十九)原生JS实现用JS代码触发指定事件

[复制链接]
查看: 1627|回复: 31
发表于 2023-1-27 16:36:45 | 显示全部楼层 | 阅读模式
上一讲中我们通过jquery提供的两种事件触发方式实现了事件的注定触发,下面我们再看一下原生JS如何实现。
在原生JS中,这个过程稍有一点抽象,请大家认真理解。
请先看下面的代码:
<!DOCTYPE html>
<html>

<head>
        <meta charset="utf-8">
        <title>原生JS实现用JS代码触发指定事件</title>
        <script src="./jquery.js"></script>
</head>


<body class="" id="body">
        <button id="btn1">按钮1</button>
        <button id="btn2">按钮2</button>
        <script type="text/javascript">
                // 下面我们想实现的是:点击按钮1触发按钮2的某事件
                var btn1 = document.getElementById('btn1');
                var btn2 = document.getElementById('btn2');
                btn2.onclick = function () {
                        console.log('OK');
                }
                btn1.onclick = function () {
                        var myEvent = new Event('click');//创建一个点击事件
                        btn2.dispatchEvent(myEvent);//将创建好的点击事件指派给btn2
                }
        </script>

</body>

</html>

javascript核心技术(三十九)原生JS实现用JS代码触发指定事件
javascript核心技术(三十九)原生JS实现用JS代码触发指定事件

在以上代码中我们先给btn2绑定了一个点击事件,然后又给btn1绑定了一个点击事件,在btn1的事件函数中,我们先使用new Event('click');创建了一个点击事件对象,然后将该对象指派给要btn2,此时点击btn1就触发了btn2的点击事件。
其它事件同理,大家可以自己测试一下。


易博软件介绍

0

主题

15

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-2-20 15:42:56 | 显示全部楼层
呵呵,我也大四,不过还没开始找工作。看了等于是预备一下了

0

主题

15

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-3-4 03:10:12 | 显示全部楼层
很好,给我们初学者一个忠告!

0

主题

19

帖子

10

积分

营销入门

Rank: 2

积分
10
发表于 2023-3-14 11:48:40 | 显示全部楼层
虽然看不懂 但我一顶要把它学会!!!!
发表于 2023-3-23 20:20:50 | 显示全部楼层
佩服!1

0

主题

11

帖子

6

积分

营销入门

Rank: 2

积分
6
发表于 2023-3-29 08:13:49 | 显示全部楼层
恩懂了很多啊谢谢咯
发表于 2023-4-3 16:26:50 | 显示全部楼层
读了你的观点  我很受用,也很感激,你说出了我们都存在,但都  又没有太重视的问题,我想,它将伴随着我以后的  学习和工作.    高手!!!
发表于 2023-4-9 04:40:25 | 显示全部楼层
汗,看了之后我流汗了.  CPU是为用户服务的,不是为程序员服务的经典!

1

主题

83

帖子

44

积分

终身会员

Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25Rank: 25

积分
44

终身会员

发表于 2023-4-13 17:30:57 | 显示全部楼层
我觉的一个学编程的人还是应该从能写开始,只有会写了才能再提高呀

0

主题

15

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-4-18 12:39:33 | 显示全部楼层
说得好,学计算机学的不仅仅是计算机,好的数学基础也是必不可少的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

 
 
QQ在线客服
QQ技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫
weixin

QQ|小黑屋|Archiver|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表