JS 判断或检测图片是否加载成功函数代码

puyuetian 乐天 关注 九级站长 创始人
发表于前端UI学习设计文章版块

1.对于img标签可以用onerror来重新加载原来错误的图片,举例:

<img src="http://www.hadsky.com/这是个错误的地址或图片资源" onerror="this.src='http://www.hadsky.com/ad/install/ad.png'">

img加载src内的图片出错时,就会自动执行onerror内的js代码,你就可以用this.src来重新加载图片。


2.通用型的判断或检测图片是否加载成功方法,用检测函数,代码如下:

//检测图片是否加载成功
function chkimgisok($src) {
    var img = new Image();
    img.src = $src;
    if (img.width == 0) {
        //加载失败
        return false;
    } else {
        //加载成功
        return true;
    }
}
该函数的使用和调用方法:
if (chkimgisok('图片地址')) {
    //图片加载成功
}else{
    //图片加载失败
}
举例:判断或检测某个对象背景图片是否加载成功:
//下面是摘抄HadSky轻论坛puyuetian_whitestyle模板判断用户头像是否加载成功的代码。
<h1 id="article-title" class="am-article-title" style="background-image: url(userheadimg/{$LZU_id}.png);background-size: 28px 28px;background-repeat: no-repeat;background-position: 0px 3px;padding-left: 35px;">
    {$LZC_title}
</h1>
<script>
    $(document).ready(function() {
        if (!chkimgisok('userheadimg/{$LZU_id}.png')) {
            $('#article-title').css('background-image', 'url(userheadimg/2.png)');
        }
    });
</script>
举例分析:

由于部分用户没有上传头像,所以直接加载其uid所对应的头像图片可能导致不存在该头像文件而显示空白,为了解决该问题引入js检测代码,当文档加载完成时判断该用户的头像是否加载成功,若没有加载成功则为其加载默认的游客头像。



评论列表 评论
发布评论

评论: JS 判断或检测图片是否加载成功函数代码

已有0次打赏
(8) 分享
分享

请保存二维码或复制链接进行分享

取消