var hstechChart = { container : "", chart : "", view : "", day : 100, rawdata: null, init : function(p1,p2,callback){ var self = this; self.view = $("body").attr("data-broswer-view"); self.container = (self.container=='')?'#hstechChartContainer':'#'+self.container.replace("#",""); $.getJSON('/'+lang+'/data/chart/hstechChart/p1/'+p1+'/p2/'+p2+'?_='+Math.random(), function(_data) { self.rawdata = $.extend(true, {}, _data.mainData); $(".hlegend .date_cur").html(Highcharts.dateFormat('%Y-%m-%d', self.rawdata.hsi[self.rawdata.hsi.length-1][0])); $(".hlegend .legend_list .hsi").html(formatPrice(self.rawdata.hsi[self.rawdata.hsi.length-1][1])); $(".hlegend .legend_list .hstech").html(formatPrice(self.rawdata.hstech[self.rawdata.hsi.length-1][1])); var data = self.decode(_data); $(self.container).highcharts('StockChart', self.getJSON(data), function(chart){ self.chart = chart; }); if (typeof callback == "function"){ callback(data); } }); }, decode : function(_data){ var tempData = _data.mainData.hsi; var base = tempData[0][1]; var min = 999999; var max = -999999; for (var i=0; i'; html += '
'+self.labels()[lang].hsi+''+formatPrice(self.rawdata.hsi[index][1])+"
"; html += '
'+self.labels()[lang].pchange+''+hsi.toFixed(2)+"%
"; html += '
'+self.labels()[lang].hstech+''+formatPrice(self.rawdata.hstech[index][1])+"
"; html += '
'+self.labels()[lang].pchange+''+vhsi.toFixed(2)+"%
"; html += ''; return html; } }, navigator : { enabled : false }, scrollbar : { enabled : false }, series : [{ name : 'HSI', data : hsidata, color: '#003868', /* marker: { symbol: "circle", }, lineWidth: 2,*/ },{ name : 'HSTECH', data : hstechdata, color: '#00b2ac', yAxis:1, /* marker: { symbol: "circle", }, lineWidth: 2,*/ } ], exporting: { enabled: false }, rangeSelector:{ enabled: false } }; }, redraw: function(){ var self = this; var chart = this.chart; $(self.container).find(".chartBackgroundLine").remove(); var fontstyle = {color: '#000', fontSize: ((this.view == "mobile"))?'11px':'14px', "font-weight": "bold"}; chart.renderer.path(['M', chart.margin[3], 0+5 ,'L', chart.margin[3], chart.margin[0]+chart.plotHeight]).attr({ stroke: '#000', 'stroke-width': 1, opacity: 1, class :'chartBackgroundLine', zIndex: 2, }).add(); chart.renderer.path(['M', chart.margin[3], chart.margin[0]+ chart.plotHeight,'L', chart.plotWidth+chart.margin[3], chart.margin[0]+ chart.plotHeight]).attr({ stroke: '#000', 'stroke-width': 1, opacity: 1, class :'chartBackgroundLine', zIndex: 2, }).add(); }, labels : function (){ return { tc :{ title1 : "指


現", title2 : "指


平", hsi : "恒生指數: ", hstech : "恒生科技指數: ", pchange : "期內表現: ", }, sc :{ title1 : "指


现", title2 : "指


平", hsi : "恒生指数: ", hstech : "恒生科技指数: ", pchange : "期内表现: ", }, en :{ title1 : "Index performance", title2 : "Index level", hsi : "HSI: ", hstech : "HSTECH: ", pchange : "Change: ", }, }; } }