Javascript Map Tooltip Alignment

时间:2016-05-27 16:50:44

标签: javascript jquery css d3.js

我最近有一位开发人员以95%的完成标记退出我的项目,并且一直在努力完成这个项目。我目前正在处理此页面上的地图上的工具提示位置:

https://www.shiftins.com/homeowners-insurance-california/

您可以在此处查看来源:

https://www.shiftins.com/county/index.html

我需要帮助解决2个问题。

  1. 条形图的工具提示应位于鼠标指针处;但是,它位于图表右侧
  2. 当按比例缩小时,地图部分的工具提示似乎消失在县的右下半部分。
  3. 我花了几个小时尝试多种解决方案的试错法,但我似乎无法弄清楚(特别是因为我不是开发人员)。

2 个答案:

答案 0 :(得分:1)

要显示地图工具提示, 而不是填充左边的条形码,给左边的属性;。 这是因为,现在条形图在地图上重叠,如果你保留边框,你可以清楚地看到重叠。

 <div id="linechart" class="col-sm-3" style="width: 60%;padding-left:120px;">

将此行更改为

     <div id="linechart" class="col-sm-3" style="width: 60%;left:125px;">

要显示条形工具提示, 现在d3.event.pageX给出了mouse的x坐标值。要获得准确的x值,你需要减去offsetLeft值

 var x = d3.event.pageX + 5-document.getElementById("linechart").offsetLeft;

答案 1 :(得分:0)

您需要在鼠标悬停/悬停事件中定位工具提示的左侧和顶部,即x轴和y轴。像这样:

将此样式添加到工具提示div: "left", (d3.event.pageX) + "px").style("top", (d3.event.pageY - 28) + "px"

这是一个有效的example