Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript d3_工具提示使用d3定位。选择(此)_Javascript_D3.js_Position_Tooltip - Fatal编程技术网

Javascript d3_工具提示使用d3定位。选择(此)

Javascript d3_工具提示使用d3定位。选择(此),javascript,d3.js,position,tooltip,Javascript,D3.js,Position,Tooltip,我使用的是d3.jsv.6。我有HTML div工具提示: <div id="tooltip"></div> 我需要稍微改变工具提示的位置。我已经测试了这些不起作用的选项: // .style("left", d3.event.pageX + 20 + "px") // .style("left", d3.event.pageY - 80 + "px") 及 请尝试此代

我使用的是d3.jsv.6。我有HTML div工具提示:

<div id="tooltip"></div>
我需要稍微改变工具提示的位置。我已经测试了这些不起作用的选项:

// .style("left", d3.event.pageX + 20 + "px")
// .style("left", d3.event.pageY - 80 + "px")


请尝试此代码,该代码应适用于V6:


工具提示是什么类型的HTML元素?HTML div-它是否回答了您的问题?offsetX-未捕获类型错误:无法访问属性offsetX,d3。事件未定义layerX-相同的错误是的,是的,我使用的是v.6。我刚刚在问题中添加了额外的代码行。您能告诉我应该输入什么事件以及在哪里输入吗。如果你能在我的案例中附上一个例子,那就更好了。谢谢你,现在可以用了。你能给我关于这个问题的信息链接吗,因为我仍然不明白为什么我需要在函数中使用三个参数-e,d,第一个参数是事件,第二个是数据。第三个可能是索引,我不知道你为什么需要它。。您可以从数据中选择地点:d3.selectplace.textPlace:+d.place;好的,顺便说一句,在我的例子中,它甚至与函数e一起工作,在这里找到有关此问题的一些信息,阻止事件管理:
// .style("left", d3.event.pageX + 20 + "px")
// .style("left", d3.event.pageY - 80 + "px")
// .style("left", d3.mouse(this)[0] + 70 + "px")
// .style("top", d3.mouse(this)[1] + "px")
g_points.on("mouseover", function (e, d, i) {
  d3.select(this).style("fill", "black");
  d3.select("#place").text("Place: " + i.place);
  d3.select("#tooltip")
    .style("left", `${e.layerX}px`)
    .style("top", `${e.layerX}px`);
});