繁体   English   中英

Safari Mac 上的 MouseLeave 事件在错误条件下触发

[英]MouseLeave Event on Safari Mac is triggered under wrong conditions

根据

https://developer.mozilla.org/en-US/docs/Web/API/Element/mouseleave_event

当指针退出元素及其所有后代时触发 mouseleave。

但是,在 Safari 上,一旦鼠标进入元素并在其中移动,就会触发此事件。 我创造了一个小提琴

 document.getElementById('out').addEventListener('mouseleave', () => console.log('left'));
 .outer { width: 100px; height: 100px; background-color: green; } .inner { width: 50px; height: 50px; background-color: red; }
 <div class="outer" id="out"> <div class="inner"> </div> </div>

https://jsfiddle.net/hs5ea7cq/

document.getElementById('out').addEventListener('mouseleave', () => console.log('left'));

在 Chrome 上,Mac 上的 FireFox 可以正常工作。 但是,Safari 会发出 mouseleave,即使它不应该发出。

我可以做些什么来在 Safari 中获得与在 Chrome 或 FireFox 中相同的行为吗?

编辑:

我创建了一个显示问题的 GIF:

https://imgur.com/a/G2csKmo

这似乎与 TigerVNC 的使用有关。 切换到 UltraVNC 解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM