javascript - IE11 中的 D3 和弦示例悬停问题

标签 javascript html css d3.js internet-explorer-11

我正在研究如何根据我在 http://www.delimited.io/blog/2013/12/8/chord-diagrams-in-d3 找到的教程在 D3 中构造和弦图的一些示例。

我在看第一个例子,关于头发颜色偏好。当您将鼠标悬停在圆圈边缘的一组上时,它只会显示与该组相关的和弦,当您再次将鼠标移到圆圈外时,所有其他和弦会重新出现。

这似乎是通过将 css 类“淡入淡出”动态附加到所有应该隐藏的和弦,然后下面的 CSS 句柄在悬停时将它们全部隐藏来实现的。

#circle:hover path.fade {
  display: none;
}

这在 Chrome 中运行良好,但是当我在 IE11 中尝试相同的页面时,一旦您将鼠标悬停在一个组上,当您将鼠标移到圆圈外时,剩余的和弦永远不会重新绘制。

我在 IE11 中启动了调试器,似乎只需在调试器中修改 DOM 上的一个属性即可解决问题 - 但我无法弄清楚如何在代码中实现此目的。

我在这里创建了一个包含所有细节的 fiddle https://jsfiddle.net/49dym52r/

感谢您的帮助。

最佳答案

我在查看 delimited.io resource 时能够重现该问题在 Windows 10 上的 Internet Explorer 11 中。但是,我无法在 Microsoft Edge 中重现该问题,这可能意味着该修复程序作为 Trident 分支后在 EdgeHTML 上完成的其他 Web 平台工作的一部分出现。

我们不太可能在 Internet Explorer 上做任何功能工作,因此您最好的选择是说服 Internet Explorer 11 以更适当的方式运行。这有时会很棘手,但几分钟后 Telerik's Fiddler ,通过添加以下内容,我能够在我的 Windows 10 版本上解决 Internet Explorer 11 中的问题:

div:hover { background: auto } // Or svg:hover, per the comments below

我将其添加到上述 delimited.io 资源的顶部,它似乎已经为我解决了这个问题。它有点笨拙,因此如果您发现它给您带来任何问题,您可能需要调整它的范围。

enter image description here

关于javascript - IE11 中的 D3 和弦示例悬停问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35024087/

相关文章:

javascript - 如何正确制作垂直可滚动区域

html - div 不是水平 Bootstrap

html - 如何设置:disabled pseudo element/class on :before pseudo element

html - bootstrap 3 增加文本背景颜色大小并在每个选项卡上切换

javascript - 在 JavaScript Canvas 中沿直线移动一个点

javascript - 使用 jQuery 选择单选按钮时出错

html - 使用 Bootstrap 调整图像大小以适应 div

html - Angular 2+ : Input decorator not reflecting checkbox

javascript - 如何检查 eval() 的 bool 值或算术运算是否为假?

html - 如何用CSS调用不同的图片