0

如果图像无法加载,我想加载默认图像。加载图像后,我还想调用 getLoadComplete() 。如何将 this.getLoadComplete() 函数传递到调用 img.onerror 的函数中?

这是我得到的代码:

    img.onload = this.getLoadComplete();

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

     img.src = request.url;
4

2 回答 2

3
img.onload = this.getLoadComplete();

您正在getLoadComplete()立即调用,并将其返回值分配给img.onload. 你可能想要这个:

img.onload = this.getLoadComplete;

也就是说,设置img.onload函数本身,而不是它的返回值。

你不需要在onerror;中做任何特别的事情。处理onload程序仍将设置为getLoadComplete,并且当您srconerror处理程序中修改 时,它将onload在加载后备图像后调用。

于 2013-10-28T19:34:34.010 回答
0

您只需要调用该函数。

img.onload = this.getLoadComplete();

img.onerror = function(){
    img.src = "http://www.3d-maps-minus-3d.com/img/unavailable.gif";
this.getLoadComplete();
 }
于 2013-10-28T19:37:20.410 回答