阅读 45

JS解决微信头像失效

  

var images = document.getElementsByTagName("img");
for (var i = 0; i < images.length; i++) {
    var img = images[i];
    if (img !== null && img.src !== null && img.src) {
        if (img.src.indexOf("wx.qlogo.cn") >= 0 || img.src.indexOf("thirdwx.qlogo.cn") >= 0) {
            avatarStatusChecker(img, function (img, status) {
                //失效头像
                if (!status) {
                    img.src = "/Assets/img/defaultAvatar.png";
                }
            });
        }
    }
}

function avatarStatusChecker(img, fn) {
    var xhr = new XMLHttpRequest();
    xhr.open(‘get‘, img.src, true);
    xhr.send();

    xhr.onreadystatechange = function (e) {
        if (this.readyState === 4 && this.status === 200) {
            var hsCode = (this.responseText.split("").reduce(function (a, b) { a = ((a << 5) - a) + b.charCodeAt(0); return a & a }, 0));
            if (typeof fn === "function") {
                fn(img, hsCode !== -1574534679);
            };
        }
    };

}

 

原文:https://www.cnblogs.com/DemonClan/p/13164565.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐