聚合物:阻止儿童切换鼠标输入/输出事件

Polymer: Stop children from toggling mouseenter/out events

本文关键字:输入 鼠标 输出 出事件 聚合物      更新时间:2023-09-26

我有一个Polymer组件,它具有on-mouseenteron-mouseout的侦听器。

listeners: {
    mouseenter: 'mouseEnter',
    mouseout: 'mouseOut',
}

和:

mouseEnter: function (e) {
    console.log(''n'nENTER');
    this.$.deleteBtn.style.display = 'block';
},
mouseOut: function (e) {
    console.log(''n'nOUT');
    this.$.deleteBtn.style.display = 'none';
}

里面有多个其他元素。

问题是,事件触发的是所有子元素,而不仅仅是父容器。特别是mouseout似乎触发了多次。我只希望它们在进入或退出主机时被触发,而不是针对所有单独的孩子。否则会导致各种意想不到的行为。

如果我不使用Polymer监听器,这是可以解决的,但由于我希望保持一致并拥有合适的范围,这不是一个真正的选择。我错过了什么?

您应该使用mouseleave而不是mouseout,因为每个子元素都会触发mouseout

请参阅此处和此处了解更多信息。