2013-10-28 4 views
0

이미지로드에 실패하면 기본 이미지를로드하려고합니다. 이미지가로드되면 getLoadComplete()를 호출하고 싶습니다. 어떻게 this.getLoadComplete() 함수를 img.onerror에서 호출 된 함수로 전달합니까?자바 스크립트 : 함수를 인수로 전달

img.onload = this.getLoadComplete(); 

    img.onerror = function(){ 
     img.src = "http://xxxx.com/image.gif"; 
    } 

    img.src = request.url; 
+1

[자바 스크립트를 파라미터로서 전달 함수 (http://stackoverflow.com/questions/13286233/javascript-pass-function-as-parameter) – Evan

+0

합니까 '의 중복 가능성 함수를 리턴하거나 getLoadComplete'은 전화를 걸고 싶은 실제 기능은 무엇입니까? –

답변

3
img.onload = this.getLoadComplete(); 

당신은 즉시 getLoadComplete()를 호출하고, img.onload에 반환 값을 할당하고 있습니다 : 여기

내가있어 코드입니다. 당신은 아마이 원하는 :

입니다
img.onload = this.getLoadComplete; 

에 함수 자체이 아닌 반환 값을 img.onload을 설정합니다.

onerror에서 특별한 작업을 수행 할 필요는 없습니다. onload 처리기는 여전히getLoadComplete으로 설정하고 onerror 처리기에서 src을 수정하면 대체 이미지가로드 된 후 onload을 호출합니다.

0

방금 ​​함수를 호출하면됩니다.

img.onload = this.getLoadComplete(); 

img.onerror = function(){ 
    img.src = "http://www.3d-maps-minus-3d.com/img/unavailable.gif"; 
this.getLoadComplete(); 
} 

관련 문제