d3.js - 如何增加 Line D3v4 的悬停区域
问题描述
我在线上有悬停效果,但线很细,所以我必须增加悬停区域,以便用户可以轻松悬停。
有人有同样的问题吗?
解决方案
如果将颜色设置为"transparent"
,路径将对鼠标事件做出反应,但不可见。
例如,假设您有一个<line>
(或<path>
,没关系):
svg.append('line')
.attr('x1', 10).attr('y1', 10)
.attr('x2', 50).attr('y2', 50)
.attr('stroke', 'black').attr('stroke-width', 1)
.on('click', () => console.log('click!'));
我建议<line>
用更大的stroke-width
和添加第二个stroke="transparent"
。您可以.clone
为此使用方法:
svg.append('line')
.attr('x1', 10).attr('y1', 10)
.attr('x2', 50).attr('y2', 50)
.attr('stroke', 'black').attr('stroke-width', 1)
.clone()
.attr('stroke', 'transparent').attr('stroke-width', 10)
.on('click', () => console.log('click!'));
推荐阅读
- pycharm - 如何在 PyCharm 中启用科学模式?
- java - 并行执行 Java 线程
- javascript - 如何在带有 AJV 错误的错误消息中使用属性名称
- html - 如何使用 css 样式表“npm start”一个 html 文件?
- c++ - STM32 UART中断处理程序缺少rx字节
- d3.js - d3.js - v3 树转换为 v4 树
- amazon-web-services - MSCK 修复表命令仅在重新创建表后才有效
- javascript - Joi 日期大于现在
- javascript - Favicon 不显示在松弛链接预览中
- amazon-web-services - Owasp Zap 和亚马逊