配列に集められた画像は、最終的な画像を完成させるために互いの上に重ねられます。問題は、画像が読み込まれると、スクロールしたり他のアニメーションを実行したりすることがほぼ不可能なため、ループが実行され続けているように見えることです。
function map(id){
var img_elem = document.getElementById("img_elem");
var ctx = document.getElementById('canvas').getContext('2d');
var name = <?php echo json_encode($sorted_array);?>;
var elements=<?php echo $filecount?>;
var image= [];
for(i=0;i<elements;i++){
image[i]= new Image();
image[i].src = "images/"+name[i];
image[i].setAttribute("class","container");
image[i].setAttribute("style","position:absolute");
ctx.drawImage(image[i],1,1);
alert(image[i].src);
}
}