【发布时间】:2020-05-05 03:33:52
【问题描述】:
当鼠标悬停事件发生在 D3 中的画笔工具时,我尝试应用 tooptip。 我想通了为什么它没有解决这个问题的解决方案是使用定制的助手 函数。
因此,我正在研究从谷歌搜索得到的辅助函数的含义。 与此同时,我遇到了一个我无法理解的代码,那就是函数链接(我假设)
这段代码是什么意思?它是如何工作的?
function tooltip(selection){
selection.on('mouseover.tooltip', function(pD, pI){
// Clean up lost tooltips
d3.select('body').selectAll('div.tooltip').remove();
// Append tooltip
tooltipDiv = d3.select('body')
.append('div')
.attr('class', 'tooltip')
var absoluteMousePos = d3.mouse(bodyNode);
tooltipDiv.style({
left: (absoluteMousePos[0] + 10)+'px',
top: (absoluteMousePos[1] - 40)+'px',
'background-color': '#d8d5e4',
width: '65px',
height: '30px',
padding: '5px',
position: 'absolute',
'z-index': 1001,
'box-shadow': '0 1px 2px 0 #656565'
});
特别是,我无法理解
的意思selection.on('mouseover.tooltip')
我明白了
selection.on('mouseover', function())
这意味着当“鼠标悬停”发生时,调用定义的函数。
但是“mouseover.tooltip”是什么意思?
完整代码如下。
https://codepen.io/jotnajoa/pen/PoPEppN
提前谢谢你。
【问题讨论】:
标签: javascript d3.js data-visualization