Initially, I put all AmChart configurations in AmCharts.ready, everything works fine.
<script src="amcharts/amcharts.js" type="text/javascript"></script> <script src="amcharts/serial.js" type="text/javascript"></script> <script> AmCharts.ready(function() { console.log("this works"); /* Other configs */ }) </script>
Somehow it stops working when I enter RequireJS, as indicated in amCharts requiresJS answers . Whatever code inside the AmChart.ready callback is executed. (Oddly enough, it was executed once during debugging)
, AmChart.ready onReadyArray, window.load/onload. , AmChart window.onload, AmChart.ready . :
onReadyArray
<script> configChart = function() { /* Create charts stuff */ }; if (AmCharts.isReady) { configChart(); } else { AmCharts.ready(configChart); } </script>
( 3.14.1 ), handleLoad :
handleLoad
AmCharts.handleLoad();
.
, "AmCharts.isReady = true"; AmCharts. :
var chartData1 = []; function generateChartData() { ... } function createStockChart() { ... } if ($('.amChartDivExists').length > 0) { AmCharts.isReady = true; generateChartData(); createStockChart(); }