这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
下面小编就为大家带来一篇 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 插件的简单方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持 phperz。
来源: http://www.phperz.com/article/17/0707/331894.html