javascript - SVG 上的鼠标行为滞后

标签 javascript css svg

我正在为我正在构建的网络应用程序开发 dentry 选择菜单。我找到了一个 SVG,正在修改它。

我尝试简化鼠标行为,仅使大区域可悬停('.parent'),而其他内容为{pointer-events:none}。然而,存在很大的滞后。当您将鼠标快速移入其中一颗 dentry 时,它通常不会使用react。仅当缓慢进入其中时。

你也看到了吗?我能做什么?

 $('.parent').mouseover(function(){
  $(this).css('fill', 'red');
});

$('.parent').mouseleave(function(){
  $(this).css('fill', 'none');
});

link to the codepen playground

最佳答案

对 CSS 进行简单更改即可解决该问题:

svg *{
  pointer-events: none; // Disable pointer-events for all elements inside the SVG
}
svg .parent{
  pointer-events: all; // Enable pointer-events only on certain elements
}

这是您的 codepen 的更新版本:https://codepen.io/etiennemartin/pen/yovzZb

我还更改了触发鼠标悬停的方式,但这只是个人喜好。对我来说看起来更干净。

关于javascript - SVG 上的鼠标行为滞后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45760203/

相关文章:

javascript - SO的问题框和预览

asp.net - 部署时图像未出现在开发服务器中

wpf - WPF 应用程序的屏幕截图作为 SVG/矢量图形?

javascript - 旋转与过渡

javascript - 仅在第一次尝试时检查复选框,javascript/jquery bug?

javascript - 带有弹出框的动画

javascript - jQuery each 循环两次

php - 无法让 4 列页脚工作并响应

javascript - 使用 CSS 调整 CodeMirror 编辑器大小不起作用

javascript - 使用 SVG 文件的跨浏览器解决方案?