下面的JS代码可以显示您的浏览器是否为IE。
var isIE = /*@cc_on!@*/!1;
有没有办法在不禁用javascript的情况下阻止此行为?
答案 0 :(得分:1)
根据对该问题的评论确定的最终目标是查看是否有办法从JavaScript的任何类型的检查中“隐藏”浏览器的身份,以帮助创建具有完全匿名性的自定义浏览器。
我觉得根据浏览器提供的所有提示来揭示它的真实身份,这几乎是不可能的。
对于Internet Explorer,这里只是(readonly)属性值的一个示例,表示浏览器是Internet Explorer
//This could be any element
var bStyle = document.body.style;
for(var x in bStyle){
console.log(x + ':' + bStyle[x]);
}
返回类似( ms 是Microsoft属性的前缀)的属性:
msBlockProgression:
msInterpolationMode:
msBackfaceVisibility:
msPerspective:
msPerspectiveOrigin:
msTransformStyle:
msTransform:
msTransformOrigin:
msAnimation:
msAnimationDelay:
msAnimationDirection:
msAnimationDuration:
msAnimationFillMode:
msAnimationIterationCount:
msAnimationName:
msAnimationPlayState:
msAnimationTimingFunction:
msFlex:
msFlexAlign:
msFlexDirection:
msFlexFlow:
msFlexItemAlign:
msFlexLinePack:
msFlexNegative:
msFlexOrder:
msFlexPack:
msFlexPositive:
msFlexPreferredSize:
msFlexWrap:
and 50+ more...
还有几十个IE浏览器可以检查哪些IE会显示IE。
console.log(typeof(window.createPopup));
//>> function in IE, undefined in other browsers
console.log(typeof(document.body.currentStyle));
//>> object in IE, undefined in other browsers
然后是所有IE专用技术...... Active-X,VML,XML数据岛,VBScript,行为,CSS表达式等。所有这些都提供了浏览器实际上是Internet Explorer的指标。
我个人并没有使用它,但Tor Browser背后的想法似乎是更好的方法...匿名化你的“轨道”而不是实际使用的是什么浏览器。