2013-08-13 6 views
0

간단하게 슬라이드 프리젠 테이션을 만들고 싶지만 작동하지 않습니다.html5 배열 캔버스 이미지 문제

var mycars=new Array(); 
mycars[0] = "Saab"; 
mycars[1] = "Volvo"; 
mycars[2] = "BMW"; 
alert(mycars[0]); 

을하지만 그렇지 경고 수행합니다 심지어 내가 넣어. 코드를 사용하여 누군가 을 도울 수 있습니까? 무슨 문제가

나는 문제가 배열 obj 생각합니다. 빨리 도와주세요! 모두 감사합니다 !!!

<html> 

<head> 
<title></title> 

<script language="javascript"> 
//start from img[0] 
var imgNum = 0; 
var currentImg = 0; 
var img = new Array(); 
var canvas = document.getElementById('canv'); 
canvas.width = 500;//document.body.clientWidth 
canvas.height = 500;//document.body.clientHeight 

var context = canvas.getContext('2d'); 

function loadImg(){ 
     alert("loadimg work"); 
     img[imgNum] = new Image(); 
     img[imgNum].addEventListener('load', eventLoaded, false); 
     img[imgNum].src = String(imgNum)+".jpg";  
} 

loadImg(); 

    function eventLoaded(){ 
     alert("loaded"); 
     if(imgNum==0){  
      context.drawImage(img[0], 0, 0); 
     } 
     imgNum = imgNum+1; 
     loadImg(); 
    } 

function clicked(){ 
    alert('clicked'); 
    context.clearRect(0, 0, canvas.width, canvas.height); 
    var displayImgNum = currentImg+1; 
    context.drawImage(img[displayImgNum], 0, 0); 
} 
</script> 
</head> 


<body> 
<canvas id="canv" onclick="clicked()">Your browser doesn't support HTML5.</canvas> 
</body> 

</html> 

답변

1

function loadImg(){ 
     alert("loadimg work"); 
     img[imgNum] = new Image(); 
     img[imgNum].addEventListener('load', eventLoaded, false); 
     img[imgNum].src = String(imgNum)+".jpg";  
} 

loadImg(); 
+0

이유를 제거하십시오? 사용자가 사진을보고있는 동안 이미지를 미리로드하려고합니다. – user000001

+0

제거한 후 어떻게 미리로드 할 수 있습니까? – user000001