Javascript Canvas.js速度变慢了
问题: 我遇到的问题是,对于每一次“JQuery事件”点击,canvas.js图表的速度与点击成正比?我相信Javascript Canvas.js速度变慢了,javascript,jquery,html,canvas,Javascript,Jquery,Html,Canvas,问题: 我遇到的问题是,对于每一次“JQuery事件”点击,canvas.js图表的速度与点击成正比?我相信$(document).ready(function(){负责。 也就是说,单击10次会使应用程序的速度降低10倍。请记住,我有五个canvas.js图表(表) Table1.js(对于其他图表,如表2、表3等,代码结构相同) 当有人已经点击某行时,你是否会一遍又一遍地重新加载每一个javascript?此外,你的时间间隔一直在运行。每次点击某行时,都会创建一个新的时间间隔,我相信这是性能
$(document).ready(function(){
负责。
也就是说,单击10次会使应用程序的速度降低10倍。请记住,我有五个canvas.js图表(表)
Table1.js(对于其他图表,如表2、表3等,代码结构相同)
当有人已经点击某行时,你是否会一遍又一遍地重新加载每一个javascript?此外,你的时间间隔一直在运行。每次点击某行时,都会创建一个新的时间间隔,我相信这是性能缓慢的问题。@Alex。因为在我第二次加载它之前,第一次点击会以高pe显示图表表现……奇怪。
(function table1(){
$(document).ready(function(){
var dps = []; // data
var chart = new CanvasJS.Chart("table1",
{
title:{
text: "Exhaust Temperature"
data: [
{
type: "spline",
name: "Temp Cylinder 1",
showInLegend: "true",
legendText: "Temp Cylinder 1",
dataPoints: dps1
}
});
var xVal = 0;
var updateInterval = 50;
var dataLength = 50;
var updateChart = function (count) {
count = count || 1;
// count is number of times loop runs to generate random dataPoints.
for (var j = 0; j < count; j++) {
dps.push({
x: xVal,
y: EXTS[1]
});
xVal++;
};
if (dps.length > dataLength )
{
dps.shift();
}
chart.render();
};
// generates first set of dataPoints
updateChart(dataLength);
// update chart after specified time.
setInterval(function(){updateChart()}, updateInterval);
});
}());
$('[data-row]').on('click', function() {
var row = $(this).attr('data-row');
$('.active').removeClass('active');
$('#table' + row).addClass('active');
if (row == 1){
$.getScript("table1.js", function(){});
table1();
} else if (row == 2) {
$.getScript("table2.js", function(){});
table2();
} else if (row == 3) {
$.getScript("table3.js", function(){});
table3();
}
});