检测浏览器是否支持vbscript

Detect if browser is vbscript capable?

本文关键字:vbscript 支持 是否 浏览器 检测      更新时间:2023-09-26

我希望我可以使用modernizer(或类似)来确定浏览器是否能够运行vbscript。看起来不行。

最近IE11修改了用户代理删除MSIE并替换为'Trident'。这样做是为了使IE看起来更像其他符合html规范的浏览器。

我有一些老网站需要浏览器支持vbscript。我正在寻找一种方法来确定我如何确定浏览器是否支持vbscript。许多这样的网站使用的是经典的asp,这使得它更加困难。

想法?泰现在,我正在考虑使用javascript来评估用户代理,如果它包含msie,那么我们可以假设它支持vbscript。

我能做到这一点的最短方式如下(可能是一个更干净的方式,但我不知道VBScript,我只知道Modernizr)。

var supportsVb = (function() {
  var supports = false;
  var vb = document.createElement('script');
  vb.type="text/vbscript";
  try {
    vb.innerText="Err.Raise";
  } catch (e) {
    supports = true;
  }
  return supports
})()

这个想法是,只有vbscript引擎会引发错误的语法。

可以这样使用:

if (supportsVb) {
    // Make a vbscript call
} else {
    // Make a javascript call
}

参见渐进式增强。

构建页面给他们"VBScript不支持"的经验。

然后添加VBScript来转换它(添加和删除DOM元素)到"VBScript是支持的"版本