Câu trả lời của @elo là đúng và được ủng hộ , mặc dù tôi phải chỉnh sửa lại một chút để làm rõ ràng hơn:
const myChartEl = document.getElementById('the-id-name');
const myChart = Highcharts.charts[myChartEl.getAttribute('data-highcharts-chart')];
myChartsau đó trở thành một đối tượng Highcharts trực tiếp hiển thị tất cả các đạo cụ hiện tại có trong biểu đồ được hiển thị trong myChartEl. Vì myChartlà một đối tượng Highcharts , người ta có thể chuỗi các phương thức nguyên mẫu ngay sau nó, mở rộng nó hoặc tham chiếu đến nó.
myChart.getTable();
myChart.downloadXLS();
setTimeout(() => Highcharts.fireEvent(myChart, "redraw"), 10);
Người ta cũng có thể myChartvượt qua .highcharts(), đó là một jQueryplugin:
var myChart = $("#the-id-name").highcharts();
Phương pháp tiếp cận jQueryplugin ở trên yêu cầu jQueryphải được tải trước khi sử dụng plugin và tất nhiên là chính plugin đó. Chính sự vắng mặt của plugin này đã khiến tôi phải tìm cách thay thế để hoàn thành điều tương tự với JavaScript vani thuần túy.
Bằng cách sử dụng phương pháp JS thuần túy, tôi đã có thể làm những gì tôi cần (đoạn mã thứ hai) mà không cần phải dựa vàojQuery :