Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在后台运行导致低性能的关系图(JavaScript+;jQuery)_Javascript_Jquery_Html - Fatal编程技术网

在后台运行导致低性能的关系图(JavaScript+;jQuery)

在后台运行导致低性能的关系图(JavaScript+;jQuery),javascript,jquery,html,Javascript,Jquery,Html,我遇到的问题是,有一个JavaScript文件在后台运行,导致应用程序运行缓慢 我只希望在page1.html中运行此JavaScript文件(因为它是一个动态图表),而不是在page2.html或page3.html中运行。我正在使用FireFox性能分析找出哪个文件在后台运行,我可以清楚地看到diagram18.js在page2.html和page3.html的后台运行。。。你知道如何防止这个文件在page2.html和page3.html的后台运行吗 下面是jQuery代码,它做了两件事。

我遇到的问题是,有一个JavaScript文件在后台运行,导致应用程序运行缓慢

我只希望在page1.html中运行此JavaScript文件(因为它是一个动态图表),而不是在page2.htmlpage3.html中运行。我正在使用FireFox性能分析找出哪个文件在后台运行,我可以清楚地看到diagram18.jspage2.htmlpage3.html的后台运行。。。你知道如何防止这个文件在page2.htmlpage3.html的后台运行吗

下面是jQuery代码,它做了两件事。第一件事;它加载用户单击图标的html页面。第二件事;它检查是否单击了另一个图标(page2.htmlpage3.html),以清除图18.js中的间隔

   $(function(){ 

            var icon_clicked = 0; 

            $('.page-links').click(function() {
                $('#page').load('page' + $(this).data('target') + '.html');

                $('[data-target]').on('click', function() {

                var icon = $(this).attr('data-target');

                if (icon !== icon_clicked) {
                    // clear the currently running interval if any
                    if('diagramInterval' + icon_clicked in window) {
                        clearInterval(window['diagramInterval' + icon_clicked]); 
                    }
                    // Remember last diagram that was clicked.
                    icon_clicked = icon; 
                    // load again only if not loaded
                    if('diagram' + icon_clicked in window) {
                        window['diagram' + icon_clicked]();
                    } else {
                    $.getScript("SensorTables/diagram" + icon_clicked + ".js", function() {
                        window['diagram' + icon_clicked]();
                        });                     
                    }
                };
              });   
            }); 
         });
这是diagram18.js:为了在jQuery中使用它,我们将
diagramInterval18
设置为等于每个
setInterval
命令

var diagramInterval18 = false; 

function diagram18(){
    var speedColor = '#19282B';
    var rpmColor = '#19282B';
    var dialColor = '#ff0000';

    if(CRANK >= 13){
     dynColor = "#E6023F";
    }
    else{
     dynColor = "#19282B";
    }  

    $(document).ready(function() {
        chart = new Highcharts.Chart({
            chart: {
                animation: {
                  duration: 10 //animasjonen på speedometeret
                },
                renderTo: 'container',
                type: 'gauge',
                alignTicks: false,
            },
            title: {
                text: ''
            },
            pane: [{
                startAngle: -180,
                endAngle: 120,
                size: 300,
                background: [{
                    // BG color for rpm
                    backgroundColor: '#19282B',
                    outerRadius: '80%',
                    innerRadius: '48%'
                }, {
                    // BG color in between speed and rpm
                    backgroundColor: '#19282B',
                    outerRadius: '79%',
                    innerRadius: '79%'
                }, {
                    // BG color for speed
                    //  backgroundColor: '#E4E3DF',
                    backgroundColor: { 
                       radialGradient: {
                          cx: 0.5,
                          cy: 0.6,
                          r: 1.0 
                        },
                       stops: [
                           [0.3, '#19282B'],
                           //[0.6, '#FF04FF'],
                           [0.45, '#19282B'],
                           [0.7, '#E6023F'],
                           //[0.7, '#FFFF04'],
                       ]
                    },
                    innerRadius: '0%',
                    outerRadius: '105%'
                }, {
                    // Below rpm bg color
                    // backgroundColor: '#909090',
                    zIndex: 1,
                    backgroundColor: { 
                       radialGradient: {
                          cx: 0.5,
                          cy: 0.75,
                          r: 0.8 
                        },
                       stops: [
                           [0.6, '#19282B' ],
                           [0.8, '#E6023F'], //sirkel mellom digital og rpm
                           [1, '#19282B']
                       ]
                    },
                    outerRadius: '48%',
                    innerRadius: '40%',
                }, {
                    backgroundColor: '#19282B',
                    zIndex: 1,
                    outerRadius: '40%',
                    innerRadius: '39%'
                }, {
                    backgroundColor: dynColor, //'#19282B', //bakgrunnen i sirkelen
                    outerRadius: '39%'

                }]
            }, {
                startAngle: -180,
                endAngle: 120,
                size: 200
            }],
            yAxis: [{
                title: {
                    text: 'km/h',
                    y: 210,
                    x: 0,
                    style: {
                        color: "#092C37",
                        fontFamily: 'Helvetica, Sans-Serif', //font i sirkelkjernen km/t
                        fontSize: '9px',
                        fontStyle: 'italic'
                    }
                },
                min: 0,
                max: 300,
                tickInterval: 10,
                tickLength: 6,
                lineWidth: 2,
                lineColor: "#FFFFFF",
                tickColor: "#FFFFFF",
                minorTickInterval: 10,
                minorTickLength: 3,
                minorTickWidth: 2,
                minorTickColor: "#FFFFFF",
                endOnTick: false,
                labels: {
                  distance: -28,
                   rotation: 'auto',
                   step: 2,
                   style: {
                       fontFamily: 'Helvetica, Sans-Serif',
                       fontSize: '18px',
                       color: "#FFFFFF", //speed color
                   }
                },
                pane: 0
            }, {

                pane: 0
            }, {
                title: {
                    text: 'rpm x1000',
                    y: 140, // posisjon på teskten
                    x: 0,
                    style: {
                        color: rpmColor, //farge på teksen rpm x1000
                        fontFamily: 'Helvetica, Sans-Serif',
                        fontSize: '9px',
                        fontStyle: 'italic'
                    }
                },
                min: 0,
                max: 16,
                offset: -21,
                minorTickInterval: 1,
                tickInterval: 1,
                tickLength: 4,
                minorTickLength: 5,
                lineColor: rpmColor,
                tickWidth: 2,
                minorTickWidth: 2,
                lineWidth: 2,
                labels: {
                   distance: 5,
                   rotation: 'auto',
                   style: {
                   fontFamily: 'Helvetica, Sans-Serif',                       
                   fontSize: '17px',
                   color:  "#FFFFFF" 
                   },
                   formatter: function() {
                       if (this.value >=13) {
                          return '<span style="color:' + "#C7003D" +'">' + this.value + "</span>"; //fargen på limit rpm tekst
                       }
                       return this.value;
                   }
                },
                pane: 1,
                plotBands: [{
                    from: 13,
                    to: 16,
                    color: "#092C37", //farge på red limit rpm linje
                    innerRadius: '70%',
                    outerRadius: '80%'
                }]
            }],
            tooltip: { enabled: false },
            credits: {
               enabled: false 
            },
            series: [{
                name: 'Speed',
                yAxis: 0,
                data: [ 0 ],
                dataLabels: {
                    color: '#FFFFFF',
                    borderWidth: 0,
                    y: 24,
                    x: 0,
                    style: {
                        fontSize: '37px',
                        fontFamily: 'Helvetica, Sans-Serif',
                        //fontStyle: 'italic'
                    },
                    formatter: function() {
                        return this.y.toFixed(1);
                    }
                },
                dial: {
                    backgroundColor: dialColor,
                    baseLength: '90%',
                    baseWidth: 7,
                    radius: '100%',
                    topWidth: 3,
                    rearLength: '-74%',
                    borderColor: '#E50544',
                    borderWidth: 1
                },
                zIndex: 1,
                pivot: {
                    radius: '0'
                }
            }, {
                name: 'RPM',
                data: [ 0 ],
                yAxis: 2,                
                dataLabels: {
                    color: '#FFFFFF',
                    borderWidth: 0,
                    y: -20,
                    x: 0,
                    style: {
                        fontSize: '14px',
                        fontFamily: 'Helvetica, Sans-Serif',
                        //fontStyle: 'italic'
                    },
                    formatter: function() {
                        return (this.y * 1000).toFixed(0) + " rpm"
                    }
                }, 
                dial: {
                    backgroundColor: dialColor,
                    baseLength: '90%',
                    baseWidth: 7,
                    radius: '100%',
                    topWidth: 3,
                    rearLength: '-74%',
                    borderColor: '#631210',
                    borderWidth: 1
                },
                pivot: {
                    radius: '0'
                }
            }]

        }, // end document
         function(chart) {

              // 2nd pane center
              var pane = chart.panes[1].center; 
              chart.ledBox = chart.renderer.rect(pane[0]-50, pane[1], 120, 80, 3).attr({
                    fill: 'rgba(229,137,100, 0)',
              }).add();

                   diagramInterval18 = setInterval(function () {
                   var val = (CRANK === undefined) ? null : CRANK;
                   var speed = (dash_kmt === undefined) ? null : dash_kmt;
                   if (val !== null) {
                       chart.series[1].points[0].update(val);
                   }
                   if (speed !== null) {
                       chart.series[0].points[0].update(speed);
                   }
                   if (val === null && speed === null) {
                       clearInterval(diagramInterval18);
                   } 
              }, 0);
        }); // end function(chart)
    }); // end document   

// CTS sensor 
FusionCharts.ready(function () {
    var chart = new FusionCharts({
      animation: {
                  duration: 800 //animasjonen på speedometeret
                 },
        type: 'cylinder',
        renderAt: 'chart-container1',
        id: 'fluid_temperature_water',
        width: '70',
        height: '180',
        dataFormat: 'json',
        dataSource: {
            "chart": {
                "caption": "",
                "subcaption": "",
                "subcaptionFontBold": "1",
                "lowerLimit": "60",
                "upperLimit": "120",
                "numberSuffix": "",                
                "bgColor": "#000000",
                "showBorder": "0",
                "thmFillColor": "#993333",
                "BgAlpha": "91.9",
                "showTickMarks":"1",
                "showTickValues":"0",
                "baseFontColor":"FFFFFF"
                //"animation":'0' //fjerne all animasjon for cylinderen
            },
            "value": CTS },
        "events": {
            "rendered" : function (evtObj, argObj){
                  diagramInterval18 = setInterval(function () {
                  FusionCharts.items["fluid_temperature_water"].feedData("&value="+CTS);
                }, 1000);
            }
        }
    })
    .render();
});

// FPS sensor
FusionCharts.ready(function () {
    var chart = new FusionCharts({
      animation: {
                  duration: 800 //animasjonen på speedometeret
                },
        type: 'cylinder',
        renderAt: 'chart-container2',
        id: 'fuel-cylinder',
        width: '70',
        height: '180',
        dataFormat: 'json',
        dataSource: {
            "chart": {
                "caption": "",
                "subcaption": "",
                "subcaptionFontBold": "1",
                "lowerLimit": "0",
                "upperLimit": "30",
                "numberSuffix": "",                
                "bgColor": "#000000",
                "showBorder": "0",
                "thmFillColor": "#993333",
                "BgAlpha": "91.9",
                "showTickMarks":"1",
                "showTickValues":"0",
                "baseFontColor":"FFFFFF"
                //"animation":'0' //fjerne all animasjon for cylinderen
            },
            "value": FPS },
        "events": {
            "rendered" : function (evtObj, argObj){
                diagramInterval18 = setInterval(function () {
                  FusionCharts.items["fuel-cylinder"].feedData("&value="+FPS);
                }, 1000);
            }
        }
    })
    .render();
});

// MAP Sensor 
function time_updater(){
  var currentTime = new Date()
  var hours = currentTime.getHours()
  var minutes = currentTime.getMinutes()

  if (minutes < 10)
  minutes = "0" + minutes
  document.getElementById("time").innerHTML = ("<p>" + hours + ":" + minutes + " " + "</p>");
  }

    // setInterval(time_updater, 1000);
    diagramInterval18 = setInterval(function() {
    $("#map").html("Manifold Absolute Pressure:  " + MAP);
    }, 500);

}
var diagramInterval18=false;
函数图18(){
var speedColor='#19282B';
var rpmColor='#19282B';
变量dialColor='#ff0000';
如果(曲柄>=13){
dynColor=“#E6023F”;
}
否则{
dynColor=“#19282B”;
}  
$(文档).ready(函数(){
图表=新的高点图表。图表({
图表:{
动画:{
持续时间:10//animasjonen på速度计
},
renderTo:'容器',
类型:“仪表”,
对:错,,
},
标题:{
文本:“”
},
窗格:[{
startAngle:-180,
端角:120,
尺寸:300,
背景:[{
//用于rpm的BG颜色
背景颜色:“#19282B”,
外层:80%,
内半径:“48%”
}, {
//BG颜色介于速度和转速之间
背景颜色:“#19282B”,
外层:79%,
内半径:“79%”
}, {
//BG颜色,速度快
//背景颜色:“#E4E3DF”,
背景颜色:{
径向梯度:{
cx:0.5,
cy:0.6,
r:1.0
},
停止:[
[0.3'#19282B'],
//[0.6,#FF04FF'],
[0.45'#19282B'],
[0.7'#E6023F'],
//[0.7'#FFFF04'],
]
},
内半径:“0%”,
外层:105%
}, {
//低于rpm bg颜色
//背景颜色:“#9090”,
zIndex:1,
背景颜色:{
径向梯度:{
cx:0.5,
cy:0.75,
r:0.8
},
停止:[
[0.6'#19282B'],
[0.8'#E6023F'],//sirkel mellom digital og rpm
[1'#19282B']
]
},
外层:48%,
内半径:“40%”,
}, {
背景颜色:“#19282B”,
zIndex:1,
外层:40%,
内半径:“39%”
}, {
背景颜色:dynColor,//'#19282B',//bakgrunnen i sirkelen
外层:39%
}]
}, {
startAngle:-180,
端角:120,
尺码:200
}],
亚克斯:[{
标题:{
文字:“公里/小时”,
y:210,
x:0,,
风格:{
颜色:“092C37”,
fontFamily:'Helvetica,无衬线',//font i sirkelkjernen km/t
fontSize:'9px',
字体:“斜体”
}
},
分:0,,
最高:300,
时间间隔:10,
长度:6,
线宽:2,
线条颜色:“#FFFFFF”,
tickColor:#FFFFFF“,
minorTickInterval:10,
minorTickLength:3,
minorTickWidth:2,
minorTickColor:#FFFFFF“,
恩东蒂克:错,
标签:{
距离:-28,
旋转:“自动”,
步骤:2,
风格:{
fontFamily:“Helvetica,无衬线”,
fontSize:'18px',
颜色:“#FFFFFF”,//速度颜色
}
},
窗格:0
}, {
窗格:0
}, {
标题:{
文本:“rpm x1000”,
y:140,//posisjon påteskten
x:0,,
风格:{
颜色:rpmColor,//farge påteksen rpm x1000
fontFamily:“Helvetica,无衬线”,
fontSize:'9px',
字体:“斜体”
}
},