2013-03-29 4 views
2

이미지로드 중 오류를 catch하고 싶습니다. 불행히도 나는 그들을 잡을 수 없어, 나는 이런 식으로 콘솔에 오류가 발생합니다.이미지로드 오류/예외를 수신 할 수 없습니다.

Failed to load resource file:///C:/Users/Ankur/Dropbox/Public/InteractiveGuide/Images/copyright_symbol.jpg 

나는 try catch 블록과 .onerror()를 모두 사용하고 있습니다. 이것은 코드입니다.

function preloadImages(arr) 
{ 
    var newimages=[], loadedImages=0, dir="./Images/"; 
    var arr = (typeof arr!="object")?[arr]:arr; 
    for(var i=0; i<arr.length; i++) 
    { 
     try 
     { 
      newimages[i]=new Image(); 
      newimages[i].src = dir+arr[i]; 
      newimages[i].onload = function() 
      { 
       loadedImages++; 
       if(loadedImages==arr.length) 
       { 
        iniScene(); 
       } 
      } 
      newimages.onerror = function() 
      { 
       console.log("Error loading image: "+arr[i]); 
      } 
     } 
     catch(ex) 
     { 
      console.log("Image Loading Error: "+ex); 
     } 
    } 
} 

오류를 올바르게 catch하는 방법은 무엇입니까?

답변

2

배열onerror을 첨부하고 개별 이미지 개체를 첨부하지 않는 것이 문제입니다.

대신 수행해야합니다

확인
newimages[i].onerror = function() { 
    ... 
} 
+0

이 작동합니다. 감사 –

관련 문제