是否有一种方法可以在jquery元素上运行,以检测图表是否已在元素中呈现?例如,当定义.highcharts()时,此代码将始终返回true,我应该检查哪个方法或属性以查看是否已呈现图表,这是使用新数据重新绘制图表的正确方法吗?
function draw (element, chartData) {
if( $(element).highcharts() ) {
$(element).highcharts().destroy();
}
$(element).highcharts( chartData);
}
答案 0 :(得分:3)
只需在没有任何参数的元素上调用highcharts()
即可。 E.g:
$(function () {
$('#container').highcharts({
series: [{
type: 'pie',
data: [1, 2, 3]
}]
});
console.log($('#container').highcharts());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<div id="container" style="min-width: 310px; height: 400px; max-width: 600px; margin: 0 auto"></div>