js判断浏览器是否安装或启用了flash的方法总结

Posted willingtolove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js判断浏览器是否安装或启用了flash的方法总结相关的知识,希望对你有一定的参考价值。


# js判断浏览器是否安装或启用了flash的方法

在传统浏览器,可以使用window.ActiveXObject来检查浏览器是否安装或启用了相关的控件。检查浏览器是否安装或启用了flash控件,首先需要先检查浏览器是否支持ActiveXObject,可以使用typeof检查window.ActiveXObject是否等于undefined,语法:

typeof window.ActiveXObject != "undefined"

如果,window.ActiveXObject不等于undefined,使用new ActiveXObject("ShockwaveFlash.ShockwaveFlash")返回flash控件对象。

var flashObj = new  ActiveXObject("ShockwaveFlash.ShockwaveFlash");

谷歌、火狐、微软Edge、Safari等现代浏览器不支持ActiveXObject,它们支持navigator.plugins检查浏览器插件,因此谷歌、火狐等浏览器都可以使用navigator.plugins检查浏览器是否启用flash插件,可以使用下面的代码返回flash插件对象:

var flashObj = navigator.plugins['Shockwave Flash'];

封装一个兼容性方法:

function hasUsableFlash()
    var flashObj;
    if(typeof window.ActiveXObject != "undefined")
        flashObj= new  ActiveXObject("ShockwaveFlash.ShockwaveFlash");
    else
        flashObj= navigator.plugins['Shockwave Flash'];
    
    return flashObj? true : false;
var result= hasUsableFlash();
if(!result) 
    alert("您未安装flash插件,或您浏览未启用flash插件!")

# chrome浏览器启用flash插件的方法

目前,chrome浏览器默认是禁用flash插件的,如果想让某个网站启用flash插件,需要单独设置;下面以www.baidu.com网站为例:
1、禁用flash:
技术图片
2、flash禁用状态下,执行hasUsableFlash方法:返回false;
技术图片
3、启用flash:
技术图片
4、flash启用状态下,执行hasUsableFlash方法:返回true;
技术图片
5、注意:
1)如果点击“查看网站信息”的锁形图标,无法直接看到flash的设置功能,可点击“网站设置”,进入chrome://settings/content/siteDetails?site=https%3A%2F%2Fjuejin.im 页面进行设置;
技术图片
技术图片
2)启用或禁用是无法用javascript控制的;

# 参考

https://www.bbsmax.com/A/rV57b6GXJP/


以上是关于js判断浏览器是否安装或启用了flash的方法总结的主要内容,如果未能解决你的问题,请参考以下文章

JS 判断浏览器是否安装Flash 兼容IEfirefox

jwplayer或任何js文件的动态加载

js判断flash文件是否加载完毕

如何在 Web 浏览器中启用 Java

火狐浏览器里的flash被禁用了怎样启用

判断系统是否安装了flash插件