hqchart 1.1.14874 → 1.1.14877

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1178,7 +1178,10 @@ this.CanvasElement.width=parseInt(pixelTatio*width);if(this.OffscreenCanvasEleme
1178
1178
  this.AdjustChartBorder=function(chart){var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
1179
1179
  chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;if(chart.Frame.AutoLeftBorder){var item=chart.Frame.AutoLeftBorder;if(IFrameSplitOperator.IsNumber(item.MinWidth))item.MinWidth*=pixelTatio;if(IFrameSplitOperator.IsNumber(item.Blank))item.Blank*=pixelTatio;}if(chart.Frame.AutoRightBorder){var item=chart.Frame.AutoRightBorder;if(IFrameSplitOperator.IsNumber(item.MinWidth))item.MinWidth*=pixelTatio;if(IFrameSplitOperator.IsNumber(item.Blank))item.Blank*=pixelTatio;}};this.AdjustTitleHeight=function(chart){var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
1180
1180
  for(var i=0;i<chart.Frame.SubFrame.length;++i){chart.Frame.SubFrame[i].Frame.ChartBorder.TitleHeight*=pixelTatio;}chart.ChartCorssCursor.TextHeight*=pixelTatio;//十字光标文本信息高度
1181
- };this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;else option.Border.Left=chart.Frame.ChartBorder.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;else option.Border.Right=chart.Frame.ChartBorder.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;else option.Border.Top=chart.Frame.ChartBorder.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;else option.Border.Bottom=chart.Frame.ChartBorder.Bottom;if(item.AutoLeft){chart.Frame.AutoLeftBorder={};if(IFrameSplitOperator.IsNumber(item.AutoLeft.Blank))chart.Frame.AutoLeftBorder.Blank=item.AutoLeft.Blank;if(IFrameSplitOperator.IsNumber(item.AutoLeft.MinWidth))chart.Frame.AutoLeftBorder.MinWidth=item.AutoLeft.MinWidth;}if(item.AutoRight){chart.Frame.AutoRightBorder={};if(IFrameSplitOperator.IsNumber(item.AutoRight.Blank))chart.Frame.AutoRightBorder.Blank=item.AutoRight.Blank;if(IFrameSplitOperator.IsNumber(item.AutoRight.MinWidth))chart.Frame.AutoRightBorder.MinWidth=item.AutoRight.MinWidth;}};this.SetEventCallback=function(chart,aryCallback){if(!chart)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryCallback))return;for(var i=0;i<aryCallback.length;++i){var item=aryCallback[i];chart.AddEventCallback(item);}};//历史K线图
1181
+ };this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;else option.Border.Left=chart.Frame.ChartBorder.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;else option.Border.Right=chart.Frame.ChartBorder.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;else option.Border.Top=chart.Frame.ChartBorder.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;else option.Border.Bottom=chart.Frame.ChartBorder.Bottom;if(item.AutoLeft){chart.Frame.AutoLeftBorder={};if(IFrameSplitOperator.IsNumber(item.AutoLeft.Blank))chart.Frame.AutoLeftBorder.Blank=item.AutoLeft.Blank;if(IFrameSplitOperator.IsNumber(item.AutoLeft.MinWidth))chart.Frame.AutoLeftBorder.MinWidth=item.AutoLeft.MinWidth;}if(item.AutoRight){chart.Frame.AutoRightBorder={};if(IFrameSplitOperator.IsNumber(item.AutoRight.Blank))chart.Frame.AutoRightBorder.Blank=item.AutoRight.Blank;if(IFrameSplitOperator.IsNumber(item.AutoRight.MinWidth))chart.Frame.AutoRightBorder.MinWidth=item.AutoRight.MinWidth;}};this.SetEventCallback=function(chart,aryCallback){if(!chart)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryCallback))return;for(var i=0;i<aryCallback.length;++i){var item=aryCallback[i];chart.AddEventCallback(item);}};/////////////////////////////////////////////////////////////////////////////////
1182
+ //属性设置
1183
+ //
1184
+ this.SetPressKeyboardConfig=function(chart,option){if(!chart||!option)return;if(IFrameSplitOperator.IsBool(option.PauseUpdate))chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;};//历史K线图
1182
1185
  this.CreateKLineChartContainer=function(option){var _this=this;var chart=null;if(option.Type==="历史K线图横屏")chart=new KLineChartHScreenContainer(this.CanvasElement);else chart=new KLineChartContainer(this.CanvasElement,this.OffscreenCanvasElement,this.CacheCanvasElement);chart.GetExtraCanvas=function(name){return _this.GetExtraCanvas(name);};var extraElement=this.GetExtraCanvas(JSChart.CorssCursorCanvasKey);if(extraElement)chart.SetCorssCursorElement(extraElement);if(option.EventCallback)this.SetEventCallback(chart,option.EventCallback);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;var pixelRatio=GetDevicePixelRatio();//右键菜单
1183
1186
  if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.TouchMoveMinAngle)chart.TouchMoveMinAngle=option.TouchMoveMinAngle;if(option.EnableZoomUpDown)chart.EnableZoomUpDown=option.EnableZoomUpDown;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsNumber(option.CtrlMoveStep))chart.CtrlMoveStep=option.CtrlMoveStep;if(IFrameSplitOperator.IsNumber(option.ShiftMoveStep))chart.ShiftMoveStep=option.ShiftMoveStep;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.GlobalOption){var item=option.GlobalOption;if(IFrameSplitOperator.IsBool(item.IsValueFullRange))chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;if(item.SelectedBorder){var subItem=item.SelectedBorder;if(IFrameSplitOperator.IsNumber(subItem.Mode))chart.GlobalOption.SelectedBorder.Mode=subItem.Mode;}}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;if(IFrameSplitOperator.IsBool(item.Wheel))chart.EnableYDrag.Wheel=item.Wheel;if(IFrameSplitOperator.IsNumber(item.WheelYMove))chart.EnableYDrag.WheelYMove=item.WheelYMove;}if(option.EnableXDrag){var item=option.EnableXDrag;if(IFrameSplitOperator.IsBool(item.Bottom))chart.EnableXDrag.Bottom=item.Bottom;if(item.LButton&&IFrameSplitOperator.IsNumber(item.LButton.Type))chart.EnableXDrag.LButton.Type=item.LButton.Type;if(item.RButton&&IFrameSplitOperator.IsNumber(item.RButton.Type))chart.EnableXDrag.RButton.Type=item.RButton.Type;}if(option.KLineTooltip){var item=option.KLineTooltip;if(IFrameSplitOperator.IsBool(item.Enable))chart.KLineTooltipConfig.Enable=item.Enable;if(IFrameSplitOperator.IsBool(item.EnableKeyDown))chart.KLineTooltipConfig.EnableKeyDown=item.EnableKeyDown;}if(option.KLine)//k线图的属性设置
1184
1187
  {var item=option.KLine;if(option.KLine.DragMode>=0)chart.DragMode=option.KLine.DragMode;if(option.KLine.Right>=0)chart.Right=option.KLine.Right;if(option.KLine.Period>=0)chart.Period=option.KLine.Period;if(option.KLine.MaxReqeustDataCount>0)chart.MaxRequestDataCount=option.KLine.MaxReqeustDataCount;//兼容老版本
@@ -1187,7 +1190,7 @@ if(option.KLine.RightSpaceCount>0)chart.RightSpaceCount=option.KLine.RightSpaceC
1187
1190
  if(option.CustomShow&&IFrameSplitOperator.IsPlusNumber(option.CustomShow.Date)){var item=option.CustomShow;chart.CustomShow={Date:item.Date};if(IFrameSplitOperator.IsNumber(item.Time))chart.CustomShow.Time=item.Time;if(IFrameSplitOperator.IsPlusNumber(item.PageSize))chart.CustomShow.PageSize=item.PageSize;}if(option.EnableFlowCapital){var item=option.EnableFlowCapital;if(item.BIT==true)chart.EnableFlowCapital.BIT=item.BIT;}if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}if(option.Page){if(option.Page.Day&&option.Page.Day.Enable==true)chart.Page.Day.Enable=true;if(option.Page.Minute&&option.Page.Minute.Enable==true)chart.Page.Minute.Enable=true;}if(option.DragDownload){if(option.DragDownload.Day&&option.DragDownload.Day.Enable==true)chart.DragDownload.Day.Enable=true;if(option.DragDownload.Minute&&option.DragDownload.Minute.Enable==true)chart.DragDownload.Minute.Enable=true;}if(option.ZoomDownload){if(option.ZoomDownload.Day&&IFrameSplitOperator.IsBool(option.ZoomDownload.Day.Enable))chart.ZoomDownload.Day.Enable=option.ZoomDownload.Day.Enable;if(option.ZoomDownload.Minute&&IFrameSplitOperator.IsBool(option.ZoomDownload.Minute.Enable))chart.ZoomDownload.Minute.Enable=option.ZoomDownload.Minute.Enable;}if(option.Language){var value=g_JSChartLocalization.GetLanguageID(option.Language);if(IFrameSplitOperator.IsNumber(value))chart.LanguageID=value;}if(option.SourceDatatLimit)chart.SetSourceDatatLimit(option.SourceDatatLimit);if(option.DrawPicture)//画图工具
1188
1191
  {if(option.DrawPicture.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.Load(option.DrawPicture.StorageKey);}if(option.DrawTool)//画图工具
1189
1192
  {if(option.DrawTool.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.Load(option.DrawTool.StorageKey);}if(option.KeyboardMove){var item=option.KeyboardMove;if(IFrameSplitOperator.IsPlusNumber(item.Delay))chart.KeyboardMove.Delay=item.Delay;}if(IFrameSplitOperator.IsNumber(option.StepPixel))chart.StepPixel=option.StepPixel;if(option.ZoomStepPixel>0)chart.ZoomStepPixel=option.ZoomStepPixel;if(option.IsApiPeriod==true)chart.IsApiPeriod=option.IsApiPeriod;//图形选中
1190
- if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.IsBool(item.EnableSelected))chart.SelectedChart.EnableSelected=item.EnableSelected;if(IFrameSplitOperator.IsBool(item.EnableMoveOn))chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;}if(!option.Windows||option.Windows.length<=0)return null;//K线扩展计算方法配置
1193
+ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.IsBool(item.EnableSelected))chart.SelectedChart.EnableSelected=item.EnableSelected;if(IFrameSplitOperator.IsBool(item.EnableMoveOn))chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;}if(option.PressKeyboardConfig)this.SetPressKeyboardConfig(chart,option.PressKeyboardConfig);if(!option.Windows||option.Windows.length<=0)return null;//K线扩展计算方法配置
1191
1194
  if(IFrameSplitOperator.IsNonEmptyArray(option.KLineCalcOption)){for(var i=0;i<option.KLineCalcOption.length;++i){var item=option.KLineCalcOption[i];if(!item.ClassName||!item.Option)continue;chart.SetKLineCalcOption(item.ClassName,item.Option);}}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}if(chart.ClassName=="KLineChartContainer"){if(!option.DragSelectRect){option.DragSelectRect={Enable:true};//默认开启区间选中画布
1192
1195
  }if(option.DragSelectRect){var zindex=10;var item=option.DragSelectRect;if(IFrameSplitOperator.IsNumber(item.ZIndex))zindex=item.ZIndex;if(item.Enable)this.CreateExtraCanvasElement(JSChart.RectDragCanvasKey,{ZIndex:zindex});//创建独立的区间选择画布
1193
1196
  }if(option.DragKLine){var item=option.DragKLine;if(IFrameSplitOperator.IsBool(item.EnableShfit))chart.KLineDragConfig.EnableShfit=item.EnableShfit;}}//创建子窗口
@@ -1231,7 +1234,7 @@ if(IFrameSplitOperator.IsBool(option.EnableSelectRect)){if(!option.DragSelectRec
1231
1234
  {if(option.DrawTool.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.Load(option.DrawTool.StorageKey);}if(option.BeforeOpen)//集合竞价
1232
1235
  {var item=option.BeforeOpen;if(IFrameSplitOperator.IsBool(item.IsShow))chart.IsShowBeforeData=item.IsShow;if(IFrameSplitOperator.IsNumber(item.Width))chart.ExtendWidth.Left=item.Width;if(IFrameSplitOperator.IsBool(item.IsShowMultiDay))chart.IsShowMultiDayBeforeData=item.IsShowMultiDay;if(IFrameSplitOperator.IsNumber(item.MulitiDayWidth))chart.MultiDayExtendWidth.Left=item.MulitiDayWidth;}if(option.AfterClose)//收盘集合竞价
1233
1236
  {var item=option.AfterClose;if(IFrameSplitOperator.IsBool(item.IsShow))chart.IsShowAfterData=item.IsShow;if(IFrameSplitOperator.IsNumber(item.ShareVol))chart.ShareAfterVol=item.ShareVol;if(IFrameSplitOperator.IsNumber(item.Width))chart.ExtendWidth.Right=item.Width;if(IFrameSplitOperator.IsBool(item.IsShowMultiDay))chart.IsShowMultiDayAfterData=item.IsShowMultiDay;if(IFrameSplitOperator.IsNumber(item.MulitiDayWidth))chart.MultiDayExtendWidth.Right=item.MulitiDayWidth;}//图形选中
1234
- if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.IsBool(item.EnableSelected))chart.SelectedChart.EnableSelected=item.EnableSelected;if(IFrameSplitOperator.IsBool(item.EnableMoveOn))chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;}if(chart.ClassName=="MinuteChartContainer"){if(!option.DragSelectRect){option.DragSelectRect={Enable:true};//默认开启区间选中画布
1237
+ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.IsBool(item.EnableSelected))chart.SelectedChart.EnableSelected=item.EnableSelected;if(IFrameSplitOperator.IsBool(item.EnableMoveOn))chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;}if(option.PressKeyboardConfig)this.SetPressKeyboardConfig(chart,option.PressKeyboardConfig);if(chart.ClassName=="MinuteChartContainer"){if(!option.DragSelectRect){option.DragSelectRect={Enable:true};//默认开启区间选中画布
1235
1238
  }if(option.DragSelectRect){var item=option.DragSelectRect;var zindex=10;if(IFrameSplitOperator.IsNumber(item.ZIndex))zindex=item.ZIndex;if(item.Enable)this.CreateExtraCanvasElement(JSChart.RectDragCanvasKey,{ZIndex:zindex});//创建独立的区间选择画布
1236
1239
  }}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;if(IFrameSplitOperator.IsBool(item.Wheel))chart.EnableYDrag.Wheel=item.Wheel;if(IFrameSplitOperator.IsNumber(item.WheelYMove))chart.EnableYDrag.WheelYMove=item.WheelYMove;}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}//分页
1237
1240
  if(option.PageInfo)chart.SetPageInfo(option.PageInfo);chart.Create(windowsCount,option);//创建子窗口
@@ -1348,9 +1351,7 @@ if(option.TooltipDialog&&option.TooltipDialog.Enable)chart.InitalTooltipDialog(o
1348
1351
  if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}//设置股票代码
1349
1352
  if(!option.Symbol){chart.DrawEmpty();this.JSChartContainer=chart;this.DivElement.JSChart=this;//div中保存一份
1350
1353
  }else{chart.Draw();chart.ChangeSymbol(option.Symbol);this.JSChartContainer=chart;this.DivElement.JSChart=this;//div中保存一份
1351
- this.JSChartContainer.Draw();}};this.CreateResizeListener=function(){var _this3=this;this.ResizeListener=new ResizeObserver(function(entries){_this3.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSChart::OnDivResize] entries=",entries);this.OnSize({Type:1});};//创建工具条
1352
- this.CreateToolbar=function(option){};//创建设置div窗口
1353
- this.CreateSettingDiv=function(option){};this.Focus=function(){if(this.CanvasElement)this.CanvasElement.focus();};//切换股票代码接口
1354
+ this.JSChartContainer.Draw();}};this.CreateResizeListener=function(){var _this3=this;this.ResizeListener=new ResizeObserver(function(entries){_this3.OnDivResize(entries);});this.ResizeListener.observe(this.DivElement);};this.OnDivResize=function(entries){JSConsole.Chart.Log("[JSChart::OnDivResize] entries=",entries);this.OnSize({Type:1});};this.Focus=function(){if(this.CanvasElement)this.CanvasElement.focus();};//切换股票代码接口
1354
1355
  this.ChangeSymbol=function(symbol,option){if(this.JSChartContainer)this.JSChartContainer.ChangeSymbol(symbol,option);};//K线切换指标
1355
1356
  this.ChangeIndex=function(windowIndex,indexName,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeIndex=='function')this.JSChartContainer.ChangeIndex(windowIndex,indexName,option);};//切换一个窗口指标,包含叠加指标,以及这个窗口的属性
1356
1357
  this.ChangeIndexWindow=function(windowIndex,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeIndexWindow=='function')this.JSChartContainer.ChangeIndexWindow(windowIndex,option);};this.AddIndexWindow=function(indexName,option){if(this.JSChartContainer&&typeof this.JSChartContainer.AddIndexWindow=='function')this.JSChartContainer.AddIndexWindow(indexName,option);};this.AddScriptIndexWindow=function(indexInfo,option){if(this.JSChartContainer&&typeof this.JSChartContainer.AddScriptIndexWindow=='function')this.JSChartContainer.AddScriptIndexWindow(indexInfo,option);};this.AddAPIIndexWindow=function(indexData,option){if(this.JSChartContainer&&typeof this.JSChartContainer.AddAPIIndexWindow=='function')this.JSChartContainer.AddAPIIndexWindow(indexData,option);};this.RemoveIndexWindow=function(id){if(this.JSChartContainer&&typeof this.JSChartContainer.RemoveIndexWindow=='function')this.JSChartContainer.RemoveIndexWindow(id);};this.ChangeScriptIndex=function(windowIndex,indexData,option){if(this.JSChartContainer&&typeof this.JSChartContainer.ChangeScriptIndex=='function')this.JSChartContainer.ChangeScriptIndex(windowIndex,indexData,option);};this.ChangePyScriptIndex=function(windowIndex,indexData)//切换py指标
@@ -1724,6 +1725,7 @@ this.TouchDrawCount=0;//手势绘制次数
1724
1725
  this.DisableMouse=false;//禁止鼠标事件
1725
1726
  this.LanguageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;this.PressTime=500;this.IsPress=false;//是否长按
1726
1727
  this.IsPressKeyboard=false;//是否键盘按键
1728
+ this.PressKeyboardConfig={PauseUpdate:false};//按键以后 是否涨停数据更新
1727
1729
  this.NetworkFilter;//网络请求回调 function(data, callback);
1728
1730
  this.LastMouseStatus={MouseOnToolbar:null};// MouseOnToolbar={ Rect:{}, Title: }
1729
1731
  this.ClickDownPoint;//鼠标点击坐标 {X, Y}, 鼠标放开以后清空为null
@@ -2418,7 +2420,8 @@ RectSelectPaint:paint//区间选择背景
2418
2420
  this.FastSlideEvent=function(){if(!this.TouchDrag)return false;if(!this.FastSlideConfig)return false;var config=this.FastSlideConfig;if(!config.Enable)return false;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_TOUCH_FAST_SLIDE);if(!event||!event.Callback)return false;var drag=this.TouchDrag;var time=Date.now();var spanTime=time-drag.StartTime;if(spanTime>config.MaxTime)return false;if(!drag.Click||!drag.LastMove)return false;var xStart=drag.Click.X;var xEnd=drag.LastMove.X;if(!IFrameSplitOperator.IsNumber(xStart)||!IFrameSplitOperator.IsNumber(xEnd))return false;var distance=xEnd-xStart;var speed=Math.abs(distance)/spanTime;JSConsole.Chart.Log('[JSChartContainer:FastSlideEvent] speed='+speed+', distance='+distance+', spanTime='+spanTime);if(Math.abs(distance)<config.MinDistance)return false;if(speed<config.MinSpeed)return false;var sendData={Speed:speed,Distance:distance,IsLeft:distance<0?true:false};event.Callback(event,sendData,this);return true;};//是否是额外的集合竞价部分
2419
2421
  this.IsCallAuctionFrame=function(frameID){return false;};//更新交易状态
2420
2422
  this.UpdateTradeStatusData=function(data,option){if(option){//是否清空
2421
- if(option.IsClear===true)this.GlobalOption.TradeStatus=null;}if(!data)return false;if(IFrameSplitOperator.IsNumber(data.Date)&&IFrameSplitOperator.IsNumber(data.Time)&&IFrameSplitOperator.IsNumber(data.Status)){this.GlobalOption.TradeStatus={Date:data.Date,Time:data.Time,Status:data.Status};return true;}return false;};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
2423
+ if(option.IsClear===true)this.GlobalOption.TradeStatus=null;}if(!data)return false;if(IFrameSplitOperator.IsNumber(data.Date)&&IFrameSplitOperator.IsNumber(data.Time)&&IFrameSplitOperator.IsNumber(data.Status)){this.GlobalOption.TradeStatus={Date:data.Date,Time:data.Time,Status:data.Status};return true;}return false;};//键盘下按暂停更新
2424
+ this.IsPauseUpdateByKeyboard=function(){if(!this.IsPressKeyboard)return false;if(!this.PressKeyboardConfig)return false;if(!this.PressKeyboardConfig.PauseUpdate)return false;return true;};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
2422
2425
  {if(this.JSChartContainer&&this.JSChartContainer.OnKeyDown)this.JSChartContainer.OnKeyDown(e);}function OnKeyUp(e)//键盘事件
2423
2426
  {if(this.JSChartContainer&&this.JSChartContainer.OnKeyUp)this.JSChartContainer.OnKeyUp(e);}function OnWheel(e)//上下滚动事件
2424
2427
  {if(this.JSChartContainer&&this.JSChartContainer.OnWheel)this.JSChartContainer.OnWheel(e);}function ToFixed(number,precision){var b=1;if(isNaN(number))return number;if(number<0)b=-1;var multiplier=Math.pow(10,precision);var value=Math.round(Math.abs(number)*multiplier)/multiplier*b;if(/^(\d+(?:\.\d+)?)(e)([\-]?\d+)$/.test(value))var s=value.toFixed2(precision);else var s=value.toString();var rs=s.indexOf('.');if(rs<0&&precision>0){rs=s.length;s+='.';}while(s.length<=rs+precision){s+='0';}return s;}function IsRectOverlap(rt,rt2){if(Math.max(rt.Left,rt2.Left)<Math.min(rt.Right,rt2.Right)&&Math.max(rt.Top,rt2.Top)<Math.min(rt.Bottom,rt2.Bottom))return true;return false;}//获取文字高度和宽度
@@ -7996,7 +7999,7 @@ this.UpdateFrameMaxMin();//调整坐标最大 最小值
7996
7999
  this.Frame.SetSizeChage(true);this.Draw();this.SendKLineUpdateEvent(bindData);this.UpdateDOMTooltip(0,bindData);this.UpdateHQFloatTooltip(bindData);//叠加指标计算
7997
8000
  this.BindAllOverlayIndexData(bindData,{CheckRunCount:true,SyncExecute:false});//异步模式叠加指标
7998
8001
  if(this.mapEvent.has(JSCHART_EVENT_ID.ON_RECV_REALTIME_DATA)){var event=this.mapEvent.get(JSCHART_EVENT_ID.ON_RECV_REALTIME_DATA);var data={HistoryData:bindData,Stock:{Symbol:this.Symbol,Name:this.Name}};event.Callback(event,data,this);}};this.RecvRealtimeData=function(data){if(this.IsOnTouch==true)return;//正在操作手势不更新数据
7999
- if(this.IsPressKeyboard==true)return;//正在操作键盘不更新数据
8002
+ if(this.IsPauseUpdateByKeyboard())return;//正在操作键盘不更新数据
8000
8003
  if(data.Ver==3.0){this.RecvRealtimeDataV2(data);return;}var realtimeData=KLineChartContainer.JsonDataToRealtimeData(data,this.Symbol);if(!realtimeData)return;var item=this.SourceData.Data[this.SourceData.Data.length-1];//最新的一条数据
8001
8004
  var lastDataCount=this.GetHistoryDataCount();//保存下上一次的数据个数
8002
8005
  if(this.SourceData.Data.length==0)//第1条数据
@@ -8038,7 +8041,7 @@ Explain:'当天1分钟K线数据',Request:{Url:self.RealtimeApiUrl,Data:{symbol:
8038
8041
  }JSNetwork.HttpRequest({url:this.RealtimeApiUrl,data:{"field":["name","symbol","price","yclose","minutecount","minute","date","time"],"symbol":arySymbol,"start":-1},type:"post",dataType:"json",async:true,success:function success(data){self.RecvMinuteRealtimeData(data);self.AutoUpdate();}});};this.SetSourceDatatLimit=function(aryLimit){this.SourceDataLimit=new _map2.default();for(var i in aryLimit){var item=aryLimit[i];this.SourceDataLimit.set(item.Period,item.MaxCount);//每个周期缓存数据最大个数 key=周期 value=最大个数
8039
8042
  JSConsole.Chart.Log('[KLineChartContainer::SetSourceDatatLimit] Period='+item.Period+', MaxCount='+item.MaxCount);}};this.ReduceSourceData=function(){if(!this.SourceDataLimit)return;if(!this.SourceDataLimit.has(this.Period))return;var limitCount=this.SourceDataLimit.get(this.Period);var frameHisdata=null;if(!this.Frame.Data)frameHisdata=this.Frame.Data;else if(this.Frame.SubFrame&&this.Frame.SubFrame[0])frameHisdata=this.Frame.SubFrame[0].Frame.Data;if(!frameHisdata)return;if(limitCount<50)return;var dataOffset=frameHisdata.DataOffset;var removeCount=0;while(this.SourceData.Data.length>limitCount){this.SourceData.Data.shift();--dataOffset;++removeCount;}if(removeCount>0){if(dataOffset<0)dataOffset=0;frameHisdata.DataOffset=dataOffset;JSConsole.Chart.Log('[KLineChartContainer::ReduceSourceData] remove data '+removeCount+', dataOffset='+dataOffset);}};this.RecvMinuteRealtimeDataV2=function(data)//新版本的
8040
8043
  {if(this.IsOnTouch==true)return;//正在操作中不更新数据
8041
- if(this.IsPressKeyboard==true)return;//正在操作键盘不更新数据
8044
+ if(this.IsPauseUpdateByKeyboard())return;//正在操作键盘不更新数据
8042
8045
  if(this.EnableVerifyRecvData&&data.symbol!=this.Symbol){JSConsole.Chart.Warn('[KLineChartContainer::RecvMinuteRealtimeDataV2] recv data symbol not match. HQChart['+this.Symbol+'] , Recv['+data.symbol+']');return;}var aryMinuteData=KLineChartContainer.JsonDataToMinuteHistoryData(data);if(!aryMinuteData||aryMinuteData.length<=0)return;if(this.IsApiPeriod)this.ReduceSourceData();//减少数据
8043
8046
  var lastDataCount=this.GetHistoryDataCount();//保存下上一次的数据个数
8044
8047
  if(!this.SourceData)return;if(!this.SourceData.MergeMinuteData(aryMinuteData,this.Period))return;JSConsole.Chart.Log('[KLineChartContainer::RecvMinuteRealtimeDataV2] update kline by 1 minute data ['+lastDataCount+'->'+this.SourceData.Data.length+'], IsAutoSyncDataOffset='+this.IsAutoSyncDataOffset);if(this.IsAutoSyncDataOffset===false)lastDataCount=null;//维持当前的屏位置
@@ -9078,7 +9081,7 @@ if(IFrameSplitOperator.IsNonEmptyArray(data.stock)&&data.stock[0]){this.DataStat
9078
9081
  this.RecvBuySellData(data.stock[0].BuySellData);}if(data.LatestPointFlash)//最新数据闪烁
9079
9082
  {var item=data.LatestPointFlash;if(IFrameSplitOperator.IsNumber(item.FlashCount))this.SetLatestPointFlash(item.FlashCount);}this.DataStatus.LatestDay=true;if(this.DayCount>1)//多日走势图
9080
9083
  {this.UpdateCallCationData(beforeOpenData,afterCloseData);this.UpdateLineColorData(aryColorData,data.stock[0].date);this.UpdateLatestMinuteData(aryMinuteData,data.stock[0].date,data.stock[0]);this.UpdateTradeStatusData(data.TradeStatus);this.UpdateHistoryMinuteUI(updateTime);this.RecvMinuteDataEvent({FunctionName:"RecvMinuteData"});this.RequestOverlayMinuteData();//请求叠加数据 (主数据下载完再下载)
9081
- this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();return;}if(this.IsOnTouch==true||this.IsPressKeyboard==true)//正在操作中不更新数据
9084
+ this.BindAllOverlayIndexData(this.SourceData,{SyncExecute:false});this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();return;}if(this.IsOnTouch==true||this.IsPauseUpdateByKeyboard())//正在操作中不更新数据
9082
9085
  {if(this.SourceData&&IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)){this.AutoUpdate();return;}}//原始数据
9083
9086
  var sourceData=new ChartData();sourceData.Data=aryMinuteData;sourceData.UpdateTime=updateTime;this.SourceData=sourceData;this.ColorLineData=aryColorData;this.UpdateTradeStatusData(data.TradeStatus);this.UpdateMinuteUI(data.stock[0],{FunctionName:"RecvMinuteData",Day:{IsFirstData:bFirstData}});if(data.AutoUpdate===false)//不执行自动更新
9084
9087
  {}else{this.AutoUpdateEvent(true,"MinuteChartContainer::RecvMinuteData");this.AutoUpdate();}};//更新单日分时图
@@ -15167,7 +15170,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15167
15170
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15168
15171
  * 版本信息输出
15169
15172
  *
15170
- */var HQCHART_VERSION="1.1.14873";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15173
+ */var HQCHART_VERSION="1.1.14875";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15171
15174
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15172
15175
  // BaseIndex:BaseIndex,
15173
15176
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.14874",
3
+ "version": "1.1.14877",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -261,6 +261,16 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
261
261
  }
262
262
  }
263
263
 
264
+ /////////////////////////////////////////////////////////////////////////////////
265
+ //属性设置
266
+ //
267
+
268
+ this.SetPressKeyboardConfig=function(chart, option)
269
+ {
270
+ if (!chart || !option) return;
271
+ if (IFrameSplitOperator.IsBool(option.PauseUpdate)) chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;
272
+ }
273
+
264
274
  //历史K线图
265
275
  this.CreateKLineChartContainer=function(option)
266
276
  {
@@ -421,6 +431,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
421
431
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
422
432
  }
423
433
 
434
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
435
+
424
436
  if (!option.Windows || option.Windows.length<=0) return null;
425
437
 
426
438
  //K线扩展计算方法配置
@@ -998,6 +1010,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
998
1010
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
999
1011
  }
1000
1012
 
1013
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
1014
+
1001
1015
  if (chart.ClassName=="MinuteChartContainer")
1002
1016
  {
1003
1017
  if (!option.DragSelectRect)
@@ -1902,18 +1916,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
1902
1916
  this.OnSize( {Type:1} );
1903
1917
  }
1904
1918
 
1905
- //创建工具条
1906
- this.CreateToolbar=function(option)
1907
- {
1908
-
1909
- }
1910
-
1911
- //创建设置div窗口
1912
- this.CreateSettingDiv=function(option)
1913
- {
1914
-
1915
- }
1916
-
1917
1919
  this.Focus=function()
1918
1920
  {
1919
1921
  if (this.CanvasElement) this.CanvasElement.focus();
@@ -3219,6 +3221,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
3219
3221
  this.PressTime=500;
3220
3222
  this.IsPress=false; //是否长按
3221
3223
  this.IsPressKeyboard=false; //是否键盘按键
3224
+ this.PressKeyboardConfig={ PauseUpdate:false, }; //按键以后 是否涨停数据更新
3222
3225
 
3223
3226
  this.NetworkFilter; //网络请求回调 function(data, callback);
3224
3227
  this.LastMouseStatus={ MouseOnToolbar:null }; // MouseOnToolbar={ Rect:{}, Title: }
@@ -12117,6 +12120,16 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
12117
12120
 
12118
12121
  return false;
12119
12122
  }
12123
+
12124
+ //键盘下按暂停更新
12125
+ this.IsPauseUpdateByKeyboard=function()
12126
+ {
12127
+ if (!this.IsPressKeyboard) return false;
12128
+ if (!this.PressKeyboardConfig) return false;
12129
+ if (!this.PressKeyboardConfig.PauseUpdate) return false;
12130
+
12131
+ return true;
12132
+ }
12120
12133
  }
12121
12134
 
12122
12135
  function GetDevicePixelRatio()
@@ -82605,7 +82618,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
82605
82618
  this.RecvRealtimeData=function(data)
82606
82619
  {
82607
82620
  if (this.IsOnTouch==true) return; //正在操作手势不更新数据
82608
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
82621
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
82609
82622
 
82610
82623
  if (data.Ver==3.0)
82611
82624
  {
@@ -82952,7 +82965,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
82952
82965
  this.RecvMinuteRealtimeDataV2=function(data) //新版本的
82953
82966
  {
82954
82967
  if (this.IsOnTouch==true) return; //正在操作中不更新数据
82955
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
82968
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
82956
82969
 
82957
82970
  if (this.EnableVerifyRecvData && data.symbol!=this.Symbol)
82958
82971
  {
@@ -92626,7 +92639,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
92626
92639
  return;
92627
92640
  }
92628
92641
 
92629
- if (this.IsOnTouch==true || this.IsPressKeyboard==true) //正在操作中不更新数据
92642
+ if (this.IsOnTouch==true || this.IsPauseUpdateByKeyboard()) //正在操作中不更新数据
92630
92643
  {
92631
92644
  if (this.SourceData && IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
92632
92645
  {
@@ -1509,18 +1509,15 @@ input[type="color"] {
1509
1509
  top: 1px;
1510
1510
  height: 500px;
1511
1511
  width: 600px;
1512
- z-index: 809;
1513
1512
  visibility:hidden;
1514
1513
  background-color: rgba(255,255,255,0.95);
1515
1514
  border: solid 1px rgba(200, 210, 219, 0.92);
1516
- display: flex;
1517
- flex-flow: column;
1518
1515
  z-index: 99;
1519
1516
  }
1520
1517
 
1521
1518
  .jschart_pop_minute_chart
1522
1519
  {
1523
- flex: 1
1520
+ height:480px
1524
1521
  }
1525
1522
 
1526
1523
  .jschart_pop_minute_chart_Title_Div
@@ -4357,6 +4357,16 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4357
4357
  }
4358
4358
  }
4359
4359
 
4360
+ /////////////////////////////////////////////////////////////////////////////////
4361
+ //属性设置
4362
+ //
4363
+
4364
+ this.SetPressKeyboardConfig=function(chart, option)
4365
+ {
4366
+ if (!chart || !option) return;
4367
+ if (IFrameSplitOperator.IsBool(option.PauseUpdate)) chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;
4368
+ }
4369
+
4360
4370
  //历史K线图
4361
4371
  this.CreateKLineChartContainer=function(option)
4362
4372
  {
@@ -4517,6 +4527,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4517
4527
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
4518
4528
  }
4519
4529
 
4530
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
4531
+
4520
4532
  if (!option.Windows || option.Windows.length<=0) return null;
4521
4533
 
4522
4534
  //K线扩展计算方法配置
@@ -5094,6 +5106,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5094
5106
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
5095
5107
  }
5096
5108
 
5109
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
5110
+
5097
5111
  if (chart.ClassName=="MinuteChartContainer")
5098
5112
  {
5099
5113
  if (!option.DragSelectRect)
@@ -5998,18 +6012,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5998
6012
  this.OnSize( {Type:1} );
5999
6013
  }
6000
6014
 
6001
- //创建工具条
6002
- this.CreateToolbar=function(option)
6003
- {
6004
-
6005
- }
6006
-
6007
- //创建设置div窗口
6008
- this.CreateSettingDiv=function(option)
6009
- {
6010
-
6011
- }
6012
-
6013
6015
  this.Focus=function()
6014
6016
  {
6015
6017
  if (this.CanvasElement) this.CanvasElement.focus();
@@ -7315,6 +7317,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7315
7317
  this.PressTime=500;
7316
7318
  this.IsPress=false; //是否长按
7317
7319
  this.IsPressKeyboard=false; //是否键盘按键
7320
+ this.PressKeyboardConfig={ PauseUpdate:false, }; //按键以后 是否涨停数据更新
7318
7321
 
7319
7322
  this.NetworkFilter; //网络请求回调 function(data, callback);
7320
7323
  this.LastMouseStatus={ MouseOnToolbar:null }; // MouseOnToolbar={ Rect:{}, Title: }
@@ -16213,6 +16216,16 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
16213
16216
 
16214
16217
  return false;
16215
16218
  }
16219
+
16220
+ //键盘下按暂停更新
16221
+ this.IsPauseUpdateByKeyboard=function()
16222
+ {
16223
+ if (!this.IsPressKeyboard) return false;
16224
+ if (!this.PressKeyboardConfig) return false;
16225
+ if (!this.PressKeyboardConfig.PauseUpdate) return false;
16226
+
16227
+ return true;
16228
+ }
16216
16229
  }
16217
16230
 
16218
16231
  function GetDevicePixelRatio()
@@ -86701,7 +86714,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
86701
86714
  this.RecvRealtimeData=function(data)
86702
86715
  {
86703
86716
  if (this.IsOnTouch==true) return; //正在操作手势不更新数据
86704
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
86717
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
86705
86718
 
86706
86719
  if (data.Ver==3.0)
86707
86720
  {
@@ -87048,7 +87061,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
87048
87061
  this.RecvMinuteRealtimeDataV2=function(data) //新版本的
87049
87062
  {
87050
87063
  if (this.IsOnTouch==true) return; //正在操作中不更新数据
87051
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
87064
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
87052
87065
 
87053
87066
  if (this.EnableVerifyRecvData && data.symbol!=this.Symbol)
87054
87067
  {
@@ -96722,7 +96735,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96722
96735
  return;
96723
96736
  }
96724
96737
 
96725
- if (this.IsOnTouch==true || this.IsPressKeyboard==true) //正在操作中不更新数据
96738
+ if (this.IsOnTouch==true || this.IsPauseUpdateByKeyboard()) //正在操作中不更新数据
96726
96739
  {
96727
96740
  if (this.SourceData && IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
96728
96741
  {
@@ -150724,7 +150737,7 @@ function ScrollBarBGChart()
150724
150737
 
150725
150738
 
150726
150739
 
150727
- var HQCHART_VERSION="1.1.14873";
150740
+ var HQCHART_VERSION="1.1.14875";
150728
150741
 
150729
150742
  function PrintHQChartVersion()
150730
150743
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.14873";
8
+ var HQCHART_VERSION="1.1.14875";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -4401,6 +4401,16 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4401
4401
  }
4402
4402
  }
4403
4403
 
4404
+ /////////////////////////////////////////////////////////////////////////////////
4405
+ //属性设置
4406
+ //
4407
+
4408
+ this.SetPressKeyboardConfig=function(chart, option)
4409
+ {
4410
+ if (!chart || !option) return;
4411
+ if (IFrameSplitOperator.IsBool(option.PauseUpdate)) chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;
4412
+ }
4413
+
4404
4414
  //历史K线图
4405
4415
  this.CreateKLineChartContainer=function(option)
4406
4416
  {
@@ -4561,6 +4571,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4561
4571
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
4562
4572
  }
4563
4573
 
4574
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
4575
+
4564
4576
  if (!option.Windows || option.Windows.length<=0) return null;
4565
4577
 
4566
4578
  //K线扩展计算方法配置
@@ -5138,6 +5150,8 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
5138
5150
  if (IFrameSplitOperator.IsBool(item.EnableMoveOn)) chart.SelectedChart.EnableMoveOn=item.EnableMoveOn;
5139
5151
  }
5140
5152
 
5153
+ if (option.PressKeyboardConfig) this.SetPressKeyboardConfig(chart, option.PressKeyboardConfig);
5154
+
5141
5155
  if (chart.ClassName=="MinuteChartContainer")
5142
5156
  {
5143
5157
  if (!option.DragSelectRect)
@@ -6042,18 +6056,6 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
6042
6056
  this.OnSize( {Type:1} );
6043
6057
  }
6044
6058
 
6045
- //创建工具条
6046
- this.CreateToolbar=function(option)
6047
- {
6048
-
6049
- }
6050
-
6051
- //创建设置div窗口
6052
- this.CreateSettingDiv=function(option)
6053
- {
6054
-
6055
- }
6056
-
6057
6059
  this.Focus=function()
6058
6060
  {
6059
6061
  if (this.CanvasElement) this.CanvasElement.focus();
@@ -7359,6 +7361,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
7359
7361
  this.PressTime=500;
7360
7362
  this.IsPress=false; //是否长按
7361
7363
  this.IsPressKeyboard=false; //是否键盘按键
7364
+ this.PressKeyboardConfig={ PauseUpdate:false, }; //按键以后 是否涨停数据更新
7362
7365
 
7363
7366
  this.NetworkFilter; //网络请求回调 function(data, callback);
7364
7367
  this.LastMouseStatus={ MouseOnToolbar:null }; // MouseOnToolbar={ Rect:{}, Title: }
@@ -16257,6 +16260,16 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
16257
16260
 
16258
16261
  return false;
16259
16262
  }
16263
+
16264
+ //键盘下按暂停更新
16265
+ this.IsPauseUpdateByKeyboard=function()
16266
+ {
16267
+ if (!this.IsPressKeyboard) return false;
16268
+ if (!this.PressKeyboardConfig) return false;
16269
+ if (!this.PressKeyboardConfig.PauseUpdate) return false;
16270
+
16271
+ return true;
16272
+ }
16260
16273
  }
16261
16274
 
16262
16275
  function GetDevicePixelRatio()
@@ -86745,7 +86758,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
86745
86758
  this.RecvRealtimeData=function(data)
86746
86759
  {
86747
86760
  if (this.IsOnTouch==true) return; //正在操作手势不更新数据
86748
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
86761
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
86749
86762
 
86750
86763
  if (data.Ver==3.0)
86751
86764
  {
@@ -87092,7 +87105,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
87092
87105
  this.RecvMinuteRealtimeDataV2=function(data) //新版本的
87093
87106
  {
87094
87107
  if (this.IsOnTouch==true) return; //正在操作中不更新数据
87095
- if (this.IsPressKeyboard==true) return; //正在操作键盘不更新数据
87108
+ if (this.IsPauseUpdateByKeyboard()) return; //正在操作键盘不更新数据
87096
87109
 
87097
87110
  if (this.EnableVerifyRecvData && data.symbol!=this.Symbol)
87098
87111
  {
@@ -96766,7 +96779,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
96766
96779
  return;
96767
96780
  }
96768
96781
 
96769
- if (this.IsOnTouch==true || this.IsPressKeyboard==true) //正在操作中不更新数据
96782
+ if (this.IsOnTouch==true || this.IsPauseUpdateByKeyboard()) //正在操作中不更新数据
96770
96783
  {
96771
96784
  if (this.SourceData && IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data))
96772
96785
  {
@@ -161944,7 +161957,7 @@ function HQChartScriptWorker()
161944
161957
 
161945
161958
 
161946
161959
 
161947
- var HQCHART_VERSION="1.1.14873";
161960
+ var HQCHART_VERSION="1.1.14875";
161948
161961
 
161949
161962
  function PrintHQChartVersion()
161950
161963
  {