从here我学会了如何检查图像是否可用。如何在img.onload函数中设置变量
但我有一个问题。我有一个变量,我会根据id设置她的值,图像是否可用。
例如,我有这样的:
app.checkImage = function (imageSrc, good, bad) {
var img = new Image();
img.onload = good;
img.onerror = bad;
img.src = imageSrc;
}
我有一个应用程序对象是这样的:
var app = {
offlineChecked: false,
offline: false,
};
内的另一个功能,我有这样的代码:
if(app.offlineChecked == true)
{
//don't do nothing
}
else
{
app.checkImage("https://mysite" + data.image_150,
function(){ app.offline = false; },
function(){ app.offline = true; });
app.offlineChecked = true;
}
但这不起作用。 app.offline始终为false,以防图像不可用并触发img.onerror。
编辑 - 我读之后的代码上市app.offline值,如下位置:
if(app.offlineChecked == true)
{
//don't do nothing
}
else
{
app.checkImage("https://mysite" + data.image_150,
function(){ app.offline = false; },
function(){ app.offline = true; });
app.offlineChecked = true;
}
if(app.offline == true)
{
console.log('offline');
}
else
{
console.log('online);
}
如何,什么时候检查app.offline的价值? –
我编辑了我的第一篇文章!感谢您的关注! – bobc82
[为什么我的变量在函数内部修改后没有改变? - 异步代码引用](http://stackoverflow.com/questions/23667086/why-is-my-variable-unaltered-after-i-modify-it-inside-of-a-function-asynchron) – JJJ