【问题标题】:lagging mouse bahavior on SVG [duplicate]SVG上的鼠标行为滞后[重复]
【发布时间】:2018-01-27 08:24:03
【问题描述】:

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

我试图简化鼠标行为,只使大区域可悬停('.parent')和其他东西 {pointer-events:none}。但是,有一个很大的滞后。当您将鼠标快速移入其中一颗牙齿时,它通常没有反应。只有慢慢地进入它。

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

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

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

link to the codepen playground

【问题讨论】:

    标签: javascript css svg


    【解决方案1】:

    对 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

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

    【讨论】:

    • 正要添加这个作为答案。我们可以将我的 Q 标记为 stackoverflow.com/questions/17616233/… 的可能重复项吗?
    • 感谢您的链接,它帮助我准确了解发生了什么。我按照你的要求标记了你的 Q。
    • 由于某种原因,codepen 直接进入了原始版本,而不是我改进的版本(其他牙齿也包括在内)......很奇怪。不过谢谢!!
    猜你喜欢
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 1970-01-01
    • 2013-09-20
    • 2021-11-11
    • 1970-01-01
    • 2022-10-13
    • 1970-01-01
    相关资源
    最近更新 更多