您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
Conceal information about network type (e.g. cellular/broadband), number of CPU cores (or Hyper Threads), and video adapter brand & model.
当前为
// ==UserScript== // @name Anti Snoop // @namespace http://greasyfork.icu/en/users/85671-jcunews // @version 1.0.2 // @license AGPLv3 // @author jcunews // @description Conceal information about network type (e.g. cellular/broadband), number of CPU cores (or Hyper Threads), and video adapter brand & model. // @match *://*/* // @grant none // @run-at document-start // ==/UserScript== (() => { ["connection", "mozConnection", "webkitConnection", "hardwareConcurrency"].forEach((k, p) => { if (navigator[k] && (p = Object.getPrototypeOf(navigator, k))) { p.get = undefined; Object.defineProperty(navigator, k, p) } }); var cv = document.createElement("canvas"); ["webgl2", "webgl", "experimental-webgl2", "experimental-webgl"].forEach((k, wgl, dri) => { if ( (wgl = cv.getContext(k)) && (dri = wgl.getExtension("webgl_debug_renderer_info")) && (dri = dri.UNMASKED_RENDERER_WEBGL) && (wgl = Object.getPrototypeOf(wgl)) && !wgl.getExtension.as_ujs ) { var ge = wgl.getExtension; wgl.getExtension = function(s) { if (s && s.toLowerCase && (s.toLowerCase() === "webgl_debug_renderer_info")) return null; return ge.apply(this, arguments) }; wgl.getExtension.as_ujs = true var gp = wgl.getParameter; wgl.getParameter = function(n) { if (n === dri) return null; return gp.apply(this, arguments) }; } }) })();