function loadImage(url) {
var retval=0;
var img = new Image();
$(img).attr('src', url)
.appendTo("#test")
.load( function() {
$(this).hide().fadeIn();
retval=true;
})
.error( function() {
$(this).remove();
retval=false;
});
return retval;
}
此函数始终返回0 :(
我想我无法覆盖全局变量(retval),因为.load函数的异步行为。任何解决方法的想法?我希望该功能还可以指示给定的远程图像是否存在。
答案 0 :(得分:0)
试试这个:
function loadImage(url) {
var retval=0;
var img = new Image();
$(img).load( function() {
$(this).hide().fadeIn();
retval=true;
})
.error( function() {
$(this).remove();
retval=false;
})
.attr('src', url)
.appendTo("#test")
;
return retval;
}
在完成加载并追加自身后,您将绑定事件处理程序(加载和错误)。
编辑:删除建议以从事件中返回值(将无法使用)