检测浏览器是否支持vbscript?

时间:2014-03-30 21:27:06

标签: javascript internet-explorer vbscript

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

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

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

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

2 个答案:

答案 0 :(得分:4)

我能够做到这一点的最短路径如下(可能是一种更干净的方式,但我不知道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
}

答案 1 :(得分:1)

请参阅progressive enhancement

构建页面,然后给出“不支持VBScript”的经验。

然后添加VBScript将其转换(添加和删除DOM元素)到“支持VBScript”版本。