我希望我可以使用modernizer(或类似的)来确定浏览器是否能够运行vbscript。它看起来不像我。
最近IE11修改了用户代理删除MSIE并替换为' Trident'。这样做是为了让IE看起来更像其他符合html规范的浏览器。
我有许多旧网站要求浏览器支持vbscript。我正在寻找一种方法来确定如何确定浏览器是否支持vbscript。其中一些网站使用经典的asp,这使得它更加困难。
想法? TY 现在,我正在考虑使用javascript来评估用户代理,如果它包含msie,那么我们可以假设它支持vbscript。
答案 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)