JS判断浏览器是否安装flash插件的简单方法

2020-03-12 16:01:35来源:爱站网 阅读 ()

新老客户大回馈,云服务器低至5折

我们都知道,浏览器的浏览也需要安装flash插件,然而我们的flash插件需要升级一般都会有提示,那么JS判断浏览器是否安装flash插件的简单方法,大家都知道吗?爱站技术频道这就为大家进行介绍。

1. 直接判断是否有flash插件

var myFlash = (function(){
  if(typeof window.ActiveXObject != "undefined"){
    return new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
  }else{
    return navigator.plugins['Shockwave Flash'];
  }
})();

?chrome:

Edge浏览器中取消了window.ActiveXObject,使用navigator.plugins

在IE其他版本中使用window.ActiveXObject,但是会报错:

Automation 服务器不能创建对象

产生这个问题的原因是因是页面中包含的脚本不能正确的创建对象

解决方法:安装“MSXML 4.0 Service Pack 2 (Microsoft XML Core Services)”补丁,可以去微软的网站上下载(安装文件:msxmlchs.msi),安装完即可解决问题。

注:出现脚本调试错误也有可能与IE的安全级别有关,可以降低IE的安全级别来解决这个问题,也可能需要“scrrun.dll”支持,具体方式为:开始->运行->运行如下命令“regsvr32 scrrun.dll”。

2. 获得flash的版本号

<script>
      (function(){ 
        var getFlashVersion = function() { 
        try { 
            if(typeof window.ActiveXObject != 'undefined') {
               return parseInt((new ActiveXObject('ShockwaveFlash.ShockwaveFlash')).GetVariable("$version").split(" ")[1].split(",")[0], 10); 
             }else{
              return parseInt(navigator.plugins["Shockwave Flash"].description.split(' ')[2], 10);
             }
          } catch(e){
            return 0;
          }
        };
        console.log(getFlashVersion());
      })();

 </script>

上述就是爱站技术频道为大家介绍的JS判断浏览器是否安装flash插件的简单方法,如果大家想进一步了解,不妨进入js.aizhan.com进行学习。


原文链接:https://js.aizhan.com/develop/JavaScript/12052.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JS之相等操作符详解

下一篇:jQuery异步提交表单的两种方式