js 判断图片 url 地址是否有效,两种方式一起使用完美解决!

话不多说,经过各种方式,各种度娘最后终于找到最期望的了!

var cover_img,img = '/static/artice/images/icon24.png'; //默认图片(失败显示图)

// 判断图片是否存在
if(is_img_url(data.cover_map)){
    img = data.cover_map
}

cover_img = `${img}" οnerrοr="javascript:this.src='/static/artice/images/icon24.png';" alt="">`

两种判断方式

//判断图片是否存在
function is_img_url(imgurl) {
    return new Promise(function(resolve, reject) {
        var ImgObj = new Image(); //判断图片是否存在
        ImgObj.src = imgurl;
        ImgObj.onload = function(res) {
            resolve(res);
        }
        ImgObj.onerror = function(err) {
            reject(err)
        }
    }).catch((e) => {}); // 加上这句不会报错(Uncaught (in promise))
}

有效返回 true,无效返回 false

你可能感兴趣的:(js,图片,url)