您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Readd Google Image search result entry's image bottom panel as bottom-right image size information and link it to the direct image resource.
当前为
// ==UserScript== // @name Google Image Direct Link Patch // @namespace GoogleImageDirectLinkPatch // @version 1.2.10 // @license AGPL v3 // @author jcunews // @description Readd Google Image search result entry's image bottom panel as bottom-right image size information and link it to the direct image resource. // @website https://gf.qytechs.cn/en/users/85671-jcunews // @include /^https:\/\/www\.google\.(co\.)?[a-z]{2,3}\/search.*tbm=isch/ // @include /^https:\/\/www\.google\.com(\.[a-z]{2,3})?\/search.*tbm=isch/ // @grant none // @run-at document-start // ==/UserScript== ((idat, ap, xo) => { function processEntries() { if (!idat) return; document.querySelectorAll("div.isv-r[data-ow]:not(.paneled_gidlp)").forEach((e, a, id, d) => { e.classList.add("paneled_gidlp"); e.insertBefore(a = document.createElement("A"), e.firstChild).className = "panel_gidlp"; a.dataset.ow = e.dataset.ow; a.dataset.oh = e.dataset.oh; a.rel = "nofollow noopener noreferrer"; id = e.dataset.id; if (!idat.some((d, i) => { if (d[7] === id) { a.href = (d[1].Ve && d[1].Ve[3] && d[1].Ve[3][0]) || (d[1][3] && d[1][3][0]); idat.splice(i, 1); return true } })) a.href = 'javascript:void("Image URL is not found")'; }) } function getArr(v) { if (v[2]) { return v[2].slice() } else return Object.values(v).reduce((r, v) => { if (Array.isArray(v) && v[2]) r = v[2].slice(); return r }, null) } function getData(v) { if (v.key && v.hash && v.sideChannel && v.data && v.data[31] && v.data[31][0] && (v = v.data[31][0][12])) return !!(idat = getArr(v)) } ap = Array.prototype.push; Array.prototype.push = function(v) { if (!idat) getData(v); return ap.apply(this, arguments); }; xo = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(mtd, url) { if (/\/_\/VisualFrontendUi\/data\/batchexecute/.test(url)) { this.addEventListener("load", (v, z) => { if (v = this.responseText.split("\n")[3]) try { if (v = JSON.parse(JSON.parse(v)[0][2])[31][0][12]) ap.apply(idat, getArr(v)); } catch(z) {} }) } return xo.apply(this, arguments); }; addEventListener("load", (a, mo, ht) => { if (a = wiz_jd.previousElementSibling.text.match(/AF_initDataCallback\((.*?)\);/)) getData((new Function("return " + a[1]))()); if ((a = document.querySelectorAll(".islrc,.islrh")).length) { document.documentElement.appendChild(b = document.createElement("STYLE")).id = "css_gidpl"; b.innerHTML = ` .isv-r.paneled_gidlp>.panel_gidlp { position: absolute; z-index: 1; right: 0; bottom: 3.1em; font-size: 10pt; line-height: normal; } .isv-r.paneled_gidlp>.panel_gidlp:before { border-radius: .2em; padding: 0 .3ex; background-color: #444; color: #fff; content: attr(data-ow) "x" attr(data-oh); }`; mo = new MutationObserver(recs => { clearTimeout(ht); ht = setTimeout(processEntries, 500); }); a.forEach(e => mo.observe(e, {childList: true})); processEntries(); } }); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址