代码之家  ›  专栏  ›  技术社区  ›  John V

在图表中放置一个对象到鼠标坐标事件.pageX

  •  0
  • John V  · 技术社区  · 6 年前

    var svg = d3.select(#myChart).append("svg")
        .attr("width", width + margin.left + margin.right)
        .attr("height", height + margin.top + margin.bottom);
    
    const tl = svg.append('line').attr("style", "position: absolute;");
    
     .on("mouseover", function(d) {
                     tl.attr('stroke', 'black')
                    .attr('x1', (d3.event.pageX + 5) + "px" )
                    .attr('x2',(d3.event.pageX + 5) + "px")
                    .attr('y1', 0 )
                    .attr('y2', height );
    
            })
    

    当图表向左对齐时,我可以看到这条线在鼠标的左边像50px(就像鼠标的X+40)。当图表位于右侧时,该线甚至不可见。我需要这条线始终位于XMouse位置,0是常量(垂直线)。

    0 回复  |  直到 6 年前