GiCon

Add favicons on google search page.

  1. // ==UserScript==
  2. // @name GiCon
  3. // @version 0.1.9
  4. // @description Add favicons on google search page.
  5. // @description:ru Добавляет иконки сайтов в поисковый ответ.
  6. // @author gvvad
  7. // @run-at document-end
  8. // @include http*://google.*/*
  9. // @include http*://www.google.*/*
  10. // @include http*://google.*.*/*
  11. // @include http*://www.google.*.*/*
  12. // @noframes
  13. // @grant none
  14. // @license MIT; https://opensource.org/licenses/MIT
  15. // @copyright 2022, gvvad
  16. // @namespace https://gf.qytechs.cn/users/100160
  17. // ==/UserScript==
  18.  
  19. (function() {
  20. 'use strict';
  21. const PROVIDER = "https://www.google.com/s2/favicons?domain=";
  22. const REG_DOMAIN = /:\/\/(.+?)(?:\/|$)/;
  23.  
  24. //custom css rule for icon
  25. try {
  26. let styl = document.createElement("style");
  27. document.head.append(styl);
  28. styl.sheet.insertRule(".gicofav{position:absolute; top:0.2em; left:-1.8em;}");
  29. } catch(e) {
  30. console.error("GiCon:css rule error!");
  31. return;
  32. }
  33.  
  34. //schedule on page load event
  35. document.documentElement.addEventListener("load", function() {
  36. try {
  37. let lst = document.querySelectorAll("#rcnt .g") || [];
  38. if (!lst.length) return;
  39.  
  40. let nimg = document.createElement("img");
  41. nimg.classList.add("gicofav");
  42.  
  43. for (let item of lst) {
  44. try {
  45. if (item.querySelector(".gicofav")) {
  46. continue;
  47. }
  48. let a = item.querySelector("a");
  49.  
  50. let nhref = REG_DOMAIN.exec(a.href)[1];
  51. nimg.setAttribute("src", `${PROVIDER}${nhref}`);
  52.  
  53. item.style.position = "relative";
  54. item.insertBefore(nimg, item.firstElementChild);
  55. } catch(e) {
  56. console.warn(e);
  57. continue;
  58. }
  59. }
  60. } catch(e) {
  61. console.error("GiCon:unexpected error!");
  62. }
  63. }, true);
  64. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址