我想开发 chrome 扩展来检查脚本说这个网站运行http://whatsmyscreenresolution.com/
例如
if (his_script==my_script)
then
block it or return "123".
我想做这样的事情。除了在我最后禁用 javascript 之外,是否有可能或者我什至可以阻止网站检测我的屏幕分辨率、字体等?
我想开发 chrome 扩展来检查脚本说这个网站运行http://whatsmyscreenresolution.com/
例如
if (his_script==my_script)
then
block it or return "123".
我想做这样的事情。除了在我最后禁用 javascript 之外,是否有可能或者我什至可以阻止网站检测我的屏幕分辨率、字体等?
我什至可以阻止网站检测我的屏幕分辨率吗
您可以定义一个新window.screen
对象
(function (screen) {
function clone(e) {
var o = {}, k;
for (k in e) o[k] = e[k];
return o;
}
Object.defineProperty(window, 'screen', {get: function () {
var o = clone(screen);
o.availHeight = o.height = Math.random() * (o.height - 600) + 600;
o.availWidth = o.width = Math.random() * (o.width - 600) + 600;
return o;
}});
}(window.screen));
在此之后,尝试访问screen
orwindow.screen
会给你随机的(但对于样式目的而言并非完全不合理)值
看看 chrome.webRequest api:https ://developer.chrome.com/extensions/webRequest
从理论上讲,您可以使用 onBeforeRequest 侦听器来执行此操作。
它不认为这是可能的。尝试设置 window.screen 并创建一个 var screen 但无论写入 screen.width 和 screen.height 什么,它总是返回正确的分辨率。至少从 javascript 控制台来看,它似乎不是可欺骗的。您可以尝试使用具有所需屏幕分辨率的隐藏框架来保护隐私,并在加载页面时将分辨率调整为实际浏览器分辨率并显示框架。