我有一个网站,在检查浏览器兼容性的代码中存在一个众所周知的错误。这是有问题的代码:
strScriptEngineVer = ScriptEngineMajorVersion() + '.' + ScriptEngineMinorVersion();
if (ScriptEngineMajorVersion() < 5 || ScriptEngineMinorVersion() < 5)
{
AddTestResultRow('ScriptEngine',
'Error',
'Script Engine', // TRANS: msgScriptEngine
strScriptEngineVer,
// TRANS: msgScriptEngineWrongVersion
'Your version of MS Script Engine is not sufficient, Centricity Enterprise Web will not function correctly.');
// TRANS: msgErrorCannotGoOn
ShowStopMessage('There is an error, Centricity Enterprise Web cannot go on.');
return false;
}
此代码导致 Internet Explorer 9 失败,因为 Jscript 引擎版本是 9.0。虽然从逻辑上讲,9.0 大于 5.8(IE 8),但上述代码失败,因为“次要版本”被报告为 0,而 0 小于 5。我想做的(如果可能的话)是绕过这个通过报告不同的 Jscript 版本进行检查,或者注入 javascript 代码来替换损坏的代码。我知道可以在 IE 的开发人员模式下执行后者(请参阅:https ://braininstitute.mch.com/wiki/Centricity_Enterprise_Web ),但我需要一种更自动化的方法。
任何帮助,将不胜感激。