当前位置: 首页 > 知识库问答 >
问题:

d3js工具提示在引导web上的位置不正确

柳刚豪
2023-03-14

我一直在尝试实现d3中的树映射图。在我的空闲时间项目中使用js库,我很难正确定位工具提示。我想它应该是这里提到的,但有几个div,我想它是放错地方了。这是我正在使用的树形图,我尝试了这里的一些建议,但似乎没有一个能使它适合我的使用。

这是我的JSFIDLE:

.on("mousemove", function (d) {
        // console.log(d)
        tooltip.transition()
          .duration(300)
          .style("opacity", .98);
        tooltip.html(`<div class="tooltip-body" data-id=${d.data.name} >
          Symbol: ${d.data.name}<br/>
          Value: ${d.data.current_value} USD<br/>
          Change: ${d.data.pc}%<br/></div>`)
           .style("left", d3.mouse(this)[0] + "px")
           .style("top", d3.mouse(this)[1] + "px")
      })

共有1个答案

庞乐池
2023-03-14

问题在于坐标。更换d3。使用d3的鼠标。事件:

.on("mousemove", function (d) {
  ...     
  tooltip.html(`<div class="tooltip-body" data-id=${d.data.name} >
    Symbol: ${d.data.name}<br/>
    Value: ${d.data.current_value} USD<br/>
    Change: ${d.data.pc}%<br/></div>`)
    .style("left", d3.event.offsetX + "px")
    .style("top", d3.event.offsetY + "px")
 })
 类似资料:
  • 我使用的工具提示从twitter引导在一个网页上的div。工具提示已初始化,但在第一次悬停时,它处于错误的位置;但是,在随后的悬停中,工具提示处于正确的位置。 我认为出现问题是因为附加工具提示的div是绝对定位的。 下面是我的HTML中的div标记: (尺寸没有改变,只是截图裁剪尺寸) 应用于div的样式有: 我可能会对div进行不同的定位以使其工作,我只是想知道为什么工具提示似乎在绝对定位的di

  • 我正在我的表单上使用引导工具提示版本3和JQuery,它有不同宽度的文本框。我想知道是否有办法根据工具提示所在的元素调整工具提示的宽度。i、 我希望工具提示内容显示在一行中,直到达到元素的宽度。一旦工具提示宽度超过它所在的元素,它将自动在下一行显示内容。这是否可以使用引导工具提示? HTML: CSS:

  • 我有一个折线图,其中数据根据X轴(时间轴)标签显示为点元素。 问题是当它显示工具提示时,例如,六月,它把它作为索引3,所以标题工具提示(xlabel)显示为“四月”。 如何在工具提示上获得正确的标签,而不依赖于索引?

  • 我有一个“li”项目,其中包含一个弹出引导工具提示的标签。 如何在“that”和“will”之间强制一条线?我不想使用工具提示的()。

  • 因此,我正在经历一个让我发疯的问题。一旦我在标记上启用引导工具提示,我的自定义JavaScript就不会触发。如果我从标记中删除触发工具提示的引导代码,一切都会正常工作。JSFIDLE示例 工作示例(删除:data-toggle=工具提示数据放置=左标题=父标题文本。

  • 当我悬停在第一个Div上时,工具提示显示得比我悬停在下面两个Div上时更远。显然,这是因为div中的文本更大/更长。但是我不想显示不依赖于悬停文本的工具提示跨度,而是与文本的包含div相关,所以它总是显示在相同的位置。 jQuery不是任何选项,但我认为,这是一个CSS问题。 null null