首页 > 解决方案 > 如何在 AmChart-StockChart 中创建 Click 事件

问题描述

假设有一个使用 AmCharts 的 Stockchart,如下所示:

https://codepen.io/Volabos/pen/yZwdqg

HTML 代码部分如下所示:

<script src="https://www.amcharts.com/lib/3/amcharts.js"></script>
<script src="https://www.amcharts.com/lib/3/serial.js"></script>
<script src="https://www.amcharts.com/lib/3/themes/light.js"></script>
<script src="https://www.amcharts.com/lib/3/amstock.js"></script>
<div id="chartdiv"></div>       

<button type="button">Click Me!</button>

在页面的左下角,有一个Button. 现在我想要一个功能,当用户单击此按钮时,将选择Zoom=MAX(如果尚未选择)。

有没有办法实现该功能?

谢谢你的指点

标签: javascriptamcharts

解决方案


官方支持的方法是将selectedperiodSelectorperiods数组中的 period 属性设置为 true(同时将其他设置为 false),然后调用setDefaultPeriod以模拟点击。

document.getElementById('clickme').onclick = event => {
  chart.periodSelector.periods.forEach((period) => {
    if (period.period === "MAX") {
      period.selected = true;
    }
    else {
      period.selected = false;
    }
  });
  chart.periodSelector.setDefaultPeriod();
};

密码笔


推荐阅读