私のコードのアイデアは、画像をロードする隠しdivを作成することです。ロードイベントが発生したら、キャンバスに描画します。コードを実行すると、このエラー0x80040111(NS_ERROR_NOT_AVAILABLE)が発生しますが、ロードイベントを待機しています。これが私のコードです。
HTML
<div id="old-counties-image-wrapper" style="display: none;">
<img border="0" height="390" id="interreg-iiia-old-counties-map" src="/f/MISCELLANEOUS/old-map.jpg" /></div>
<p>
<canvas id="old-counties-image-canvas"></canvas></p>
およびjavascript
 $('#interreg-iiia-old-counties-map').load(function() {
    var canvas=document.getElementById('old-counties-image-canvas');
    if (canvas.getContext) {
         var ctx=canvas.getContext('2d');
         var img=$('#interreg-iiia-old-counties-map');
         ctx.drawImage(img, 0, 0);
    }
    //else {
    //    $('#old-counties-image-wrapper').show();
    //}
   });
elseの部分は今のところコメントアウトされていますが、canvasをサポートしていないブラウザ用にあります。