我是js的新手,只需从官方网站复制,代码是:
<html>
<head>
<title>Charts using Socket.io and Highcharts</title>
<script src="https://code.highcharts.com/stock/highstock.js"></script>
<script src="https://code.highcharts.com/stock/modules/exporting.js"> </script>
<script>
$(function () {
Highcharts.setOptions({
global: {
useUTC: false
}
});
// Create the chart
Highcharts.stockChart('container', {
chart: {
events: {
load: function () {
// set up the updating of the chart each second
var series = this.series[0];
setInterval(function () {
var x = (new Date()).getTime(), // current time
y = Math.round(Math.random() * 100);
series.addPoint([x, y], true, true);
}, 1000);
}
}
},
rangeSelector: {
buttons: [{
count: 1,
type: 'minute',
text: '1M'
}, {
count: 5,
type: 'minute',
text: '5M'
}, {
type: 'all',
text: 'All'
}],
inputEnabled: false,
selected: 0
},
title: {
text: 'Live random data'
},
exporting: {
enabled: false
},
series: [{
name: 'Random data',
data: (function () {
// generate an array of random data
var data = [],
time = (new Date()).getTime(),
i;
for (i = -999; i <= 0; i += 1) {
data.push([
time + i * 1000,
Math.round(Math.random() * 100)
]);
}
return data;
}())
}]
});
});
</script>
</head>
<body>
<div id="container" style="height: 400px; min-width: 310px"></div>
</body>
</html>
控制台告诉我'$'没有定义,我试图摆脱&#39;功能&#39;,得到highcharts错误#13。我在nodejs上运行它,代码在index.html文件中,没有其他js文件。
答案 0 :(得分:0)
在当前脚本标记之前添加:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
检查一下:
https://jsfiddle.net/basmLukr/
注意:$(function () {..}
是文档就绪事件的jQuery更短方法,因此首先需要包含jQuery。我认为Highcharts
创建/更新应该在页面加载后调用,这就是为什么当你摆脱$(function () {..}
“页面加载”功能时它不起作用。