Angular 角度2(鼠标移动)不是';不要叫鼠标快速移动

Angular 角度2(鼠标移动)不是';不要叫鼠标快速移动,angular,typescript,mouseleave,Angular,Typescript,Mouseleave,在我的Angular 2应用程序中,我有一个画布。当有人将鼠标悬停在某些部分上时,我会显示一个带有信息的弹出框。当他们将鼠标移离popover时,我使用popover上的(mouseleave)事件隐藏popover并更改我的typescript中的一些变量 然而,我在测试中发现了一个问题。当你将鼠标悬停在某个物体上并显示popover,然后快速离开popover时,mouseleave永远不会开火 这是一个复制问题的plunker(简化版): 如何复制该问题:将鼠标悬停在蓝点上,然后以慢速/正

在我的Angular 2应用程序中,我有一个画布。当有人将鼠标悬停在某些部分上时,我会显示一个带有信息的弹出框。当他们将鼠标移离popover时,我使用popover上的(mouseleave)事件隐藏popover并更改我的typescript中的一些变量

然而,我在测试中发现了一个问题。当你将鼠标悬停在某个物体上并显示popover,然后快速离开popover时,mouseleave永远不会开火

这是一个复制问题的plunker(简化版):

如何复制该问题:将鼠标悬停在蓝点上,然后以慢速/正常速度将鼠标指针从弹出窗口向右移动。popover将按预期消失,因为mouseleave被调用。现在再试一次,除了快速将鼠标指针向右移动。这可能需要你尝试几次,但如果你移动得足够快,mouseleave将永远不会开火


这是虫子吗?有没有一种简单的方法来解决这个问题,或者我可以用一些东西来代替mouseleave?

我可能有一台速度快的电脑,或者是一个速度慢的鼠标,但我无法重现这种行为。我像乌塞恩·博尔特那样做,但无法重现。这很难重现。你必须掌握窍门。让我看看我是否可以创建一个视频或gif的发生。请注意,我的电脑有时确实运行缓慢,但这应该仍然可以工作,无论滞后。我试了几次,但在26秒的时候,我终于把它绊倒了。我还在用Chrome58.0.3029.110中的Windows10进行测试
this example uses (mouseleave)