导航到其他页面时,Favicon会消失(在Chrome中)

时间:2018-02-06 21:02:20

标签: javascript ruby-on-rails google-chrome favicon turbolinks

在Rails应用程序中遇到问题:favicon正确加载,但当我导航到应用程序中的另一个页面时,favicon消失。这似乎只发生在Chrome(v64)中。

布局/ application.html.erb

<!-- Favicon -->
<%= favicon_link_tag 'favicon.ico', rel: "icon" %>
<%= favicon_link_tag 'favicon.ico', rel: "shortcut icon" %>

我在app / assets / images中有favicon.ico个文件,我在公共文件夹中有另一个副本作为后备。

重新加载/刷新页面会再次显示favicon,但如果我点击链接,它会在下一页加载时消失。

Turbolinks似乎工作正常 - 页面加载后,<link>标签位于<head>,但它似乎已经与新页面的标题,元描述等一起重新加载。 / p>

3 个答案:

答案 0 :(得分:3)

奇怪的是,在<head>中的favicon之前放置苹果触摸图标解决了它。我不知道为什么,但它的确有效。感谢Ari Summer discovering the fix

<%# Apple Touch Icon %>
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">

<%# Favicon %>
<link rel="shortcut icon" href="/favicon.png">

答案 1 :(得分:0)

您可以尝试使用“setIcon(”[icon link.ico]“)功能;”来自库UltraPlugin.js(https://sourceforge.net/projects/ultraplugin-js/),但此函数具有.ico文件限制

答案 2 :(得分:0)

不要忘记sizes 192x192(比180x180好得多)。例如:

<link rel="icon"
      href="https://neculaifantanaru.com/totul_despre_lideri_si_leadership.ico" 
      sizes="192x192" />`