11
27
2013
10

恢复火狐地址栏图标及 HTTPS 站点标识

本文来自依云's Blog,转载请注明。

大约一年前,火狐 14 发布的时候,取消了在地址栏显示网站图标的功能,而且重新设计了 HTTPS 网站的标识。那个白色背景上的绿色标识我很不喜欢,于是通过给 omni.ja 文件打补丁的方法恢复了之前的样式:

  • HTTP 网站图标:

    HTTP favicon

  • HTTPS 域名显示:

    HTTPS domain

  • HTTPS 「经营者」显示:

    HTTPS identity

  • 部分 chrome URL 显示(我自己照着改的):

    Chrome URL

可是,火狐 21 对这部分代码进行了重构,我找不到相关部分的代码了。于是,我一直还在使用火狐 20。直到前几天。

实际上,恢复在地址栏显示网站的扩展有不少,但无一例外,它们都只是恢复网站图标的显示。有个插件也恢复了 HTTPS 网站的浅蓝色域名显示,但是没有已认证的「经营者」的绿色显示。而且,它的代码是通过定时器每隔几百毫秒就执行一次,相比事件响应的方法太没效率了。

于是,使用代码片断速记器(默认快捷键Shift+F4),配合 Firebug 查看 chrome://browser/content/browser.xul,根据之前的样式表,我终于得到了以下解决方案(实际上上边的截图是我这个解决方案应用之后的)——

首先,安装 userChromeJS 扩展。这个扩展使得在火狐启动时加载 userChrome.js 文件。

其次,userChrome.js 文件,使地址栏显示网站图标并在正确的时机切换。它位于火狐配置目录下的 chrome 目录下:(注意已有新版

这部分,特别是标签页事件,参考了 MDN 的相关文档

最后,HTTPS 和 chrome URL 的样式文件,放到同目录下的 userChrome.css 中,有点长:

另外,新版火狐又有一点令我不满了:滚动到页面底部和顶部也会使用平滑滚动,不喜欢。还是这个是可选的,设置 general.smoothScroll.otherfalse 就可以了。

2013年11月29日更新:自火狐 23 起,地址栏搜索会使用搜索栏的默认搜索引擎。对于我这种拿地址栏搜网站、搜索栏查字典的用户来说,这很难以忍受。于是找到 keyword.URL Hack! 这个扩展,新建字符串设置keyword.URL为 Google「手气不错」地址https://www.google.com/search?hl=zh-CN&btnI=1&q=,终于又回到从前二者兼俱的时候。

2014年3月25日更新:更新了脚本,在载入过程中不会显示错误的图标了。

发送到 Kindle

Category: 火狐 | Tags: 火狐 userChrome | Read Count: 9414
Avatar_small
Fermat618 说:
11 年前

大哥,都Firefox 20了怎么还用 (function () {})(); 这种难看的写法?用 let 啊。

Avatar_small
依云 说:
11 年前

忘记了……MDN 它也不用 let 的嘛……

Fermat618 说:
11 年前

gnome-shell 扩展里面全是 let. 网页编程可能要考虑到该死的兼容性,自己的插件没这问题,好的特性随便用。

ffmmx 说:
11 年前

这个从来都没有注意过呵呵

jiazhoulvke 说:
11 年前

我的mint上的火狐都已经到25.0.1了……

Avatar_small
依云 说:
11 年前

我这里也是啊。升级之后发现在火狐 23 的时候有好多破坏我已有习惯的变化 :-(

咖啡小冰 说:
11 年前

地址栏搜网站、搜索栏查字典 怎么弄?

Avatar_small
依云 说:
11 年前

我在最后一段写了,安装那个插件,在 about:config 里设置 keyword.URL 为 Google 的值,这样子地址栏搜索与搜索栏就分开了。你在搜索栏添加个字典搜索就可以了。

如果你想要的字典网站没有提供搜索引擎插件,可以安装 https://addons.mozilla.org/zh-CN/firefox/addon/add-to-search-bar/ 这个插件来方便地添加搜索引擎插件。

咖啡小冰 说:
11 年前

已经搞了,我选择使用了百度一下,全不知道。因为姑姑经常要科学使用.谢谢依云

eagle 说:
11 年前

收下


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

Mastodon | Theme: Aeros 2.0 by TheBuckmaker.com