有关ActiveXObject的兼容性问题(浏览器的特有属性)

  这个问题还得从一开始时候学习有关javascript中有关对文件的一些操作。

  对于每个前端的人应该都清楚有关File对象,其中包括多种方法,就不一一描述了,比如说她是通过FileSystemObject对象的GetFile()方法来创建的,其中的增删改查不太清楚的可以自行去理解。

  接着上述的话题继续,有关创建File对象的时候,我们一般会定义一个fso对象变量,让其获得FileSystemObject对象,然后再调用上述方法,也就是这句:

  var fso,f;

  fso=new ActiveXObject("Scripting.FileSystemObject");

  f=fso.GetFile(xxx);

      是故会出现这个ActiveXObject对象,她是启用并返回 Automation 对象的引用

  使用方法(此处转载):
  newObj = new ActiveXObject( servername.typename[, location])
  ActiveXObject 对象语法有这些部分:
  其中newObj是必选项。要赋值为 ActiveXObject 的变量名。
  servername是必选项。提供该对象的应用程序的名称。
  typename是必选项。要创建的对象的类型或类。
  location是可选项。创建该对象的网络服务器的名称。
  Automation服务器至少提供一类对象,例如字处理应用程序可能提供应用程序对象、文档对象和工具栏对象。
  由于只有IE浏览器支持创建ActiveX控件,因此她有一个其他浏览器没有的东西,就是ActiveXObject函数。只要判断window对象存在ActiveXObject函数,就可以明确判断出当前浏览器是IE,是故她也是可以用来判断浏览器是否支持ActiveX控件。对于其他的浏览器就不建议使用该函数(我觉得没意义);
 
 
  延伸扩展:如何判断当前浏览器是什么浏览器?
  简而言之,每个浏览器的独有属性的一个罗列:
  总所周知:当下比较常用的有 Firefox(火狐浏览器)、Opera(欧鹏浏览器)、Safari(苹果公司的网络浏览器)、Chrome(谷歌浏览器); 下面一一对各个浏览器相对独有的特性进行一个描述(暂时不谈论内核的差距,主要是从相关函数进行分析)。
  Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小(IE对应的中是getBoundingClientRect函数)。这是Firefox独有的,判断它即可知道是当前浏览器是Firefox。
  Opera提供了专门的浏览器标志,就是window.opera属性。
  Safari浏览器中有一个其他浏览器没有的openDatabase函数,可做为判断Safari的标志。
  Chrome有一个MessageEvent函数,但Firefox也有。不过,好在Chrome并没有Firefox的getBoxObjectFor函数,根据这个条件还是可以准确判断出Chrome浏览器的。
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT黄大大

有您的支持我将毕尽一生精力为您

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值