Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过JavaScript检测Firefox中安装的Adobe Acrobat版本_Javascript_Firefox_Plugins_Version_Acrobat - Fatal编程技术网

如何通过JavaScript检测Firefox中安装的Adobe Acrobat版本

如何通过JavaScript检测Firefox中安装的Adobe Acrobat版本,javascript,firefox,plugins,version,acrobat,Javascript,Firefox,Plugins,Version,Acrobat,我知道这可以在IE中通过创建ActiveX对象来实现,但我如何在FF中实现呢。plugins['AdobeAcrobat']对象让我知道它是否已安装,但它不包含版本号。有什么想法吗?navigator.plugins[n]。name其中n是Acrobat插件的索引,其中应该包含版本号。不幸的是,从AdobeReader8开始,他们将名称更改为“用于Firefox和Netscape的AdobePDF插件”,没有版本信息。因此,如果这是您至少检测到的Reader 8的名称,但无法区分版本8和版本9

我知道这可以在IE中通过创建ActiveX对象来实现,但我如何在FF中实现呢。plugins['AdobeAcrobat']对象让我知道它是否已安装,但它不包含版本号。有什么想法吗?

navigator.plugins[n]。name
其中
n
是Acrobat插件的索引,其中应该包含版本号。不幸的是,从AdobeReader8开始,他们将名称更改为“用于Firefox和Netscape的AdobePDF插件”,没有版本信息。因此,如果这是您至少检测到的Reader 8的名称,但无法区分版本8和版本9


另外,请确保您考虑到Mac不需要Acrobat Reader来呈现PDF文件。(我启动我的Windows分区只是为了测试这一点。)

应该可以像swfobject检测flash版本那样执行此操作:


此脚本检测所有浏览器中的阅读器-甚至检测Chrome的PDF阅读器


如果你没有的话,我会这么说-SWFObject让成千上万的web开发人员的生活变得更轻松,一次一个。好的建议,我没有想到去看,但不幸的是,它只起作用,因为navigator.plugins['Shockwave Flash']。说明中实际上包含了版本号。AdobeAcrobat没有这样做,他们描述中唯一的一件事就是“用于Firefox和Netscape的AdobePDF插件”。回答得很好。这在IE上也是可用的还是需要一种不同的方法?关于Mac的好建议,但此解决方案与SWFObject解决方案有相同的问题,Adobe Acrobat的描述中没有包含版本号。关于IE注释,此描述方法可用于IE上的其他插件,但是一种更可靠的方法是创建一个ActiveXObject,如下所述:抱歉,Snocash-我没有意识到Adobe在v8中停止在其中添加版本号。我用更多信息更新了答案。没有系统需要Acrobat Reader来呈现PDF文件。我更喜欢Windows上的Foxit。ID为“Pdf1”的元素应该是什么?请解释一下。
var p = document.getElementById('Pdf1');
//p.GetVersions()
if(p.GetVersions().indexOf("7.0") != -1)
    alert("Acrobat 7 Found")
var browser_info = {
    name: null,
    acrobat : null,
    acrobat_ver : null
  };


if(navigator.plugins != null)
  {      
   var acrobat = navigator.plugins['Adobe Acrobat'];
   if(acrobat == null)
   {           
    browser_info.acrobat = null;
    return browser_info;
   }
   browser_info.acrobat = "installed";
   browser_info.acrobat_ver = parseInt(acrobat.version[0]);                   
  }


where navigator is the property of Window