mouseenter 和mouseover的区别

mouseenter和mouseover都是JavaScript中的鼠标事件,但它们的行为有所不同。mouseover事件在鼠标进入元素及其子元素时都会触发,而mouseenter事件只在鼠标进入元素本身时触发,不会因经过子元素而再次触发。因此,mouseenter事件不会发生冒泡现象。在实际应用中,如果只想在鼠标真正进入元素边界时执行操作,mouseenter是更好的选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mouseenter 和mouseover的区别
mouseover 鼠标经过自身盒子会触发,经过子盒子还会触发。mouseenter 只会经过自身盒子触发
之所以这样,就是因为mouseenter不会冒泡
跟mouseenter搭配鼠标离开 mouseleave 同样不会冒泡
在这里插入图片描述

 <div class="father">
        <div class="son"></div>
    </div>

father为粉色盒子

var father = document.querySelector('.father');
        var son = document.querySelector('.son');
        father.addEventListener('mouseover', function() {
            console.log(11);

        })

mouseover:鼠标从子盒子(紫色)移动到父盒子也会输出!
mouseenter:不会(注意是两个ee,我有次傻逼只写了一个)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值