如何从网站获取苹果触摸图标,如果它不存在,则显示图标?



我想从网站上抓取apple touch图标(据我所知,大多数网站的图标都存储在website.com/apple-touch-icon.png中),如果有404或图像不存在,则使用谷歌收藏夹抓取器(https://plus.google.com/_/favicon?domain_url=google.com)显示网站的收藏夹。

使用js/jquery,这可能吗?

您只需将图像的url设置为触摸图标url,然后使用onerror事件将其更改为favicon url。

function getImage(url) {
    image.src = url + "/apple-touch-icon.png";
    image.onerror = function() {
        image.src = "https://plus.google.com/_/favicon?domain_url=" + url;
    }
}

Demo(请记住在输入框中的URL之前包含http://)

然而,一些网站使用除";apple touch icon.png";,因此,您可能想要使用多个错误函数,以便始终获得appletouch图标。

此外,一些网站(如谷歌)为不存在的图像返回1px x 1px的图像,这意味着这将不起作用。

最新更新