我有一个函数:
function IsImageLoadable(URL) {
var imageObj = new Image();
imageObj.src = URL;
var x = (imageObj.complete);
var y = (imageObj.naturalHeight);
if ( (x === true) && (y !== 0))
return true;
else
return false;
}
问题是在Chrome,IE,Edge和Opera中,此功能可以正常工作。如果图像是可加载的,则x
和y
变量设置为 true
,并且某些数字相应地大于 0。但是,在实时运行的Firefox中,x
和y
都设置为false
和0
。
我之所以说实时,是因为在逐行调试和单步执行时,x
等于true
,y
等于 500 左右。
在 Firefox 中使用图像对象时,这是一个问题吗?有什么建议吗?
在加载图像时设置处理程序
function IsImageLoadable(URL) {
var imageObj = new Image();
imageObj.src = URL;
imageObj.onload = function(){
//your code
}
}