gpt4 book ai didi

使用异步属性 : Highcharts 时 Javascript 不工作

转载 作者:行者123 更新时间:2023-11-30 19:27:21 25 4
gpt4 key购买 nike

我正在尝试加快我的页面。但问题是我认为 Highcharts js 可能会减慢我的网站速度。

我已将 Highchart 的 JS 包含在 header 中,因为我需要更早地执行脚本,以便可以加载 highchart 的 map 。但我认为这个过程对我的 Pagespeed 影响很大

我被要求对 js 进行延迟解析,所以我所做的是在脚本标记中添加了一个异步属性,但在添加异步属性后我的 map 停止显示。

我的脚本标签是这样的

<script async src="assets/js/jquery.min.js"></script>
<script async src="assets/js/script.min.js"></script>
<script async type="text/javascript" src="assets/js/jquery-3.3.1.js"></script>
<script async src="js/highcharts/highstocks.js"></script>
<script async src="js/highcharts/mapmodulesdata.js"></script>
<script async src="js/highcharts/mapmodulesexporting.js"></script>
<script async src="js/highcharts/map-export-data.js"></script>
<script async src="js/highcharts/map.js"></script>
<script async src="js/highcharts/worldmap.js"></script>

如有遗漏请指正

最佳答案

只有在dom中加载“highcharts.js”后才需要调用Highcharts API,可以按照下面的例子:

https://codepen.io/anon/pen/ydorpE?&editable=true

  var script =   document.getElementById("script1");  

script.onload = function(){
afterLoad()
}



function afterLoad () {
Highcharts.chart('container', {

title: {
text: 'Solar Employment Growth by Sector, 2010-2016'
},

subtitle: {
text: 'Source: thesolarfoundation.com'
},

yAxis: {
title: {
text: 'Number of Employees'
}
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle'
},

plotOptions: {
series: {
label: {
connectorAllowed: false
},
pointStart: 2010
}
},

series: [{
name: 'Installation',
data: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175]
}, {
name: 'Manufacturing',
data: [24916, 24064, 29742, 29851, 32490, 30282, 38121, 40434]
}, {
name: 'Sales & Distribution',
data: [11744, 17722, 16005, 19771, 20185, 24377, 32147, 39387]
}, {
name: 'Project Development',
data: [null, null, 7988, 12169, 15112, 22452, 34400, 34227]
}, {
name: 'Other',
data: [12908, 5948, 8105, 11248, 8989, 11816, 18274, 18111]
}],

responsive: {
rules: [{
condition: {
maxWidth: 500
},
chartOptions: {
legend: {
layout: 'horizontal',
align: 'center',
verticalAlign: 'bottom'
}
}
}]
}

});


}
#container {
min-width: 310px;
max-width: 800px;
height: 400px;
margin: 0 auto
}
<script id='script1' async   src="https://code.highcharts.com/highcharts.js"></script>
<script async src="https://code.highcharts.com/modules/series-label.js"></script>
<script async src="https://code.highcharts.com/modules/exporting.js"></script>
<script async src="https://code.highcharts.com/modules/export-data.js"></script>

<div id="container"></div>

关于使用异步属性 : Highcharts 时 Javascript 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56766030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com