博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js 利用事件委托解决mousedown中的click
阅读量:5790 次
发布时间:2019-06-18

本文共 606 字,大约阅读时间需要 2 分钟。

有一个需求是这样的:

父元素div绑定一个mousedown事件,子元素a绑定一个click事件。

看解构:

 

搜了很多相关的都没有解决办法,于是我想到了事件委托,在父元素被mousedown的时候,event对象里包含了很多有用的东西。其中target就是关键!

代码:

//原生js走起const nav = document.querySelector('#nav');    const a = nav.querySelector('a');    a.addEventListener("click",function(e){        alert("a被点了");        //e.stopPropagation();    });    nav.addEventListener("mousedown",function(e){        (e.target.tagName).toLowerCase() === 'a' ? a.click :alert('你点击的是父元素');            });

  

这样,只要判断到我们点击到区域有a标签,说明我点击到了它,然后模拟触发一次click,就完成了我的需求了。

转载于:https://www.cnblogs.com/webSong/p/9234205.html

你可能感兴趣的文章
设计模式学习笔记(8)——装饰者模式
查看>>
个人笔记------微信支付
查看>>
Django 之 基于类的视图源码分析
查看>>
增强的任务单元模型
查看>>
十招保护Linux系统安全
查看>>
Luhn算法验证银行卡是否有效
查看>>
javascript代码snippet
查看>>
《棋经十三篇》
查看>>
统计方法:Count API-Medoo使用指南
查看>>
Slackware窗口系统本地化
查看>>
Swift-SnapKit报错(代码布局)原因
查看>>
并发编程知识点记录
查看>>
Map并发变成的三种写法,执行时间简单比较
查看>>
字符集与字符编码
查看>>
美团点评容器平台介绍
查看>>
免费的数据库建模工具
查看>>
Springboot2.0整合RocketMQ示例
查看>>
U956从B02升级至B04全过程
查看>>
void *指针
查看>>
《专家系统破解篇 七、IL代码破解》之 规则推理
查看>>