首页 > 解决方案 > 如何在highcharts react js中获取legendItemClick的x和y偏移位置?

问题描述

正是我想要的是,当单击每个单个图例项时,它将在该位置显示下拉菜单。

标签: javascriptjquerycssreactjsreact-highcharts

解决方案


既然您使用的是反应,为什么不从所需组件中任何位置的 onClick 中找到偏移量 x 和 y 。您的问题不完整,因为没有附加代码,但您需要的是事件侦听器。

要让一个显示您单击的任何组件的 x 和 y 偏移量,请执行此操作;

  componentWillUnmount() {
    window.removeEventListener('click', this.handleClick);
  }

  componentDidMount() {
    window.addEventListener('click', this.handleClick);

现在,创建一个名为 handleClick 的函数并将事件作为参数传递,例如:

handleClick = (e) => {
 console.log(e.offsetX,e.offsetY)
    }
  }

最后,给组件一个onClick属性并this.handleClick作为要运行的函数传入,如下所示:

<div className="charts" onClick={this.handleClick}>
</div>

注意:理想情况下,您最好在有状态组件中完成所有这些工作。


推荐阅读