我正在网络浏览器上检测adblock插件,我注意到了
navigator.plugins
返回一个PluginArray
对象数组,其中包含已安装的插件列表。
Java Applet Plug-in
Shockwave Flash
Picasa
QuickTime Plug-in
但出乎意料的是它没有返回所有插件,没有列出诸如“用户代理切换器”和“ Adblock ”之类的插件(与{{中所述的相反) 3}})。
为什么它不显示所有插件(我错过了什么)或者我如何显示所有插件?
答案 0 :(得分:0)
您可以尝试检查这些扩展程序如何修改您的网页。作为Chrome的用户代理切换器示例:
if (window.new_nav && window.old_navigator && window.new_nav.userAgent === navigator.userAgent) {
console.log('user changed navigator.userAgent, real one:', window.old_navigator.userAgent);
}
要检测adBlock,您可以查看此问题 - > stackoverflow.com
答案 1 :(得分:0)
浏览器不再返回插件数组,除了最常见的插件,如Shockwave flash,Java等。我认为避免浏览器指纹识别。您应该检查您感兴趣的每个插件,例如
navigator.plugins["Silverlight Plug-In"].name