Google Image Direct Link Patch

Make clicking on image bottom panel go directly to the image in a Google Image search result. Use SHIFT+Click to open image in a new tab.

目前為 2017-02-08 提交的版本,檢視 最新版本

// ==UserScript==
// @name        Google Image Direct Link Patch
// @namespace   GoogleImageDirectLinkPatch
// @description Make clicking on image bottom panel go directly to the image in a Google Image search result. Use SHIFT+Click to open image in a new tab.
// @author      jcunews
// @include     /^https:\/\/www\.google\.(co\.)?[a-z]{2}\/search.*tbm=isch/
// @include     /^https:\/\/www\.google\.com(\.[a-z]{2})?\/search.*tbm=isch/
// @version     1.1.3
// @grant       none
// ==/UserScript==

//*** Settings Start ***
var bottomPanelBackgroundColor = "rgba(51,51,51,0.8)"; //"rgba(51,51,51,0.8)" is the default. Alpha (4th number) is the opacity level.
var bottomPanelFontColor       = "#FFF";               //"#FFF" is the default.
var bottomPanelFontSize        = "11px";               //"11px" is the default. Can be e.g. "9pt" for size in Points.
var bottomPanelFontWeight      = "normal";             //"normal is the default. Can be "bold".
//*** Settings End ***

//add bottom panel style override
var ele = document.createElement("STYLE");
ele.innerHTML = ".rg_ilmbg,a.rg_ilmbg:link,a.rg_ilmbg:visited{background-color:" + bottomPanelBackgroundColor + ";color:" + bottomPanelFontColor + ";font-size:" + bottomPanelFontSize + ";font-weight:" + bottomPanelFontWeight + "}";
document.body.appendChild(ele);

//add the click handler to the direct image
document.addEventListener("click", function(ev) {
  var ele = ev.target.parentNode, url;
  if (!ev.button && ele && ele.parentNode) {
    ele = ele.parentNode;
    if (ele.classList.contains("_aOd") && ele.parentNode) {
      ele = ele.parentNode;
      if (ele) {
        url = ele.search.match(/imgurl=([^&]+)/);
        if (url) {
          url = decodeURIComponent(url[1]);
          if (ev.stopImmediatePropagation) {
            ev.stopImmediatePropagation();
          }
          if (ev.stopPropagation) {
            ev.stopPropagation();
          }
          ev.preventDefault();
          if (ev.shiftKey) {
            window.open(url);
          } else {
            window.location.href = url;
          }
        }
      }
    }
  }
}, true);

//add direct image URL to the image bottom panel
document.addEventListener("mouseover", function(ev) {
  var panel = ele = ev.target, url, link;
  if ((ele.className === "rg_ilmbg") && (panel.tagName !== "A") && ele.parentNode) {
    ele = ele.parentNode;
    if (ele && ele.parentNode) {
      ele = ele.parentNode;
      url = ele.search.match(/imgurl=([^&]+)/);
      if (url) {
        url = decodeURIComponent(url[1]);
        link = document.createElement("A");
        link.href = url;
        link.className = "rg_ilmbg";
        link.innerHTML = panel.innerHTML;
        panel.parentNode.replaceChild(link, panel);
      }
    }
  }
}, true);

QingJ © 2025

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