在我目前正在开发的应用程序中,有2个HTML5画布。其中一个(TempCanvas)用于临时绘制图表,另一个(MainCanvas)用于将图表传输到其中以供展示。我有一张图片,我想将其绘制到TempCanvas上,然后在加载完成后,将TempCanvas绘制到MainCanvas上。
我遇到的问题是,在将图像绘制到TempCanvas之前,就已经将TempCanvas绘制到了MainCanvas上。是否有一种方法可以等待图像加载完成再继续执行代码呢?
我的主要功能:
DrawChart函数:
我遇到的问题是,在将图像绘制到TempCanvas之前,就已经将TempCanvas绘制到了MainCanvas上。是否有一种方法可以等待图像加载完成再继续执行代码呢?
我的主要功能:
1 // Draw the chart onto the TempCanvas
2 $(this).DrawChart(TempCanvas, OtherParams);
3 // Draw the TempCanvas onto the MainCanvas
4 MainCanvasContext.drawImage(TempCanvas.get(0), PositionX, PositionY);
DrawChart函数:
1 $.fn.DrawChart = function(TempCanvas, OtherParams)
2 {
3 var image = new Image();
4 image.onload = function()
5 {
6 TempCanvasContext.drawImage(image, PositionX, PositionY);
7 // Draw some other stuff on the TempCanvas.
8 }
9 image.src = FilePath;
10 }
基本上我正在寻找一种方法,在执行主线4之前等待DrawChart Line 6完成执行。任何指向正确方向的指针都将不胜感激。