2016-07-25 50 views
0

我有一个聚合物组件,其中有听众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似乎触发多次。 我只想让他们在主持人进入或退出时被触发,而不是所有的个人孩子。否则会引起各种意想不到的行为。

这可以解决,如果我没有使用聚合物听众,但因为我想是一致的,并有适当的范围,这不是一个真正的选择。 我错过了什么?

回答

0

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

有关详细信息,请参见herehere