面接に参加したとき、質問されましたが、どう答えたらよいかわかりませんでした。
質問の要点がわかりますか?
Check if the complete
attribute of the Image
object is true
:
function is_cached(src) {
var image = new Image();
image.src = src;
return image.complete;
}
It seems to work (although it'll load the image if it isn't in the cache, which might not be what you want):
> is_cached('http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=3')
false
> is_cached('http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=3')
true
you could check like:
function is_cached(img_url){
var imgEle = document.createElement("img");
imgEle.src = img_url;
return imgEle.complete || (imgEle.width+imgEle.height) > 0;
}
//and check, returns true or false depending on cached or not
is_cached("http://www.somesite.com/some_image.jpg");