不,在 Javascript 中没有办法做到这一点。至少,不会以实际实现任何目标的方式——加载页面时渲染模式是固定的,因此您无法从页面内的 JS 中更改它。
另一种解决方案是将X-UA-Compatible
标志添加为 HTTP 标头。这将在您网站的所有页面上设置它,而无需任何 HTML 更改。
您提到您正在使用 IIS。这个页面应该可以帮助您为您的站点配置它。
但是,真正的解决方案始终是修复站点,使其在 IE10 中运行。这可能是最适合您的解决方案,因为 IE10 实际上非常擅长符合标准;如果您有一些在 IE8 和 IE9 中有效但在 IE10 中无效的东西,那么几乎可以肯定它实际上是您的页面中的问题,而不是 IE10 中的任何问题。
这反过来意味着,即使它现在可以在其他浏览器中运行,您的代码中也可能存在一个错误,可能会在其他浏览器的未来版本中中断。
使用 IE 兼容模式的另一个问题是,它确实不是它应该兼容的旧 IE 版本的准确副本。对于 IE10 的兼容模式尤其如此,因为有一些旧功能已从 IE10 中完全删除,因此在兼容模式下也不可用。这意味着 IE8 和 IE9 可能工作,但 IE9-compat 模式下的 IE10 可能无法工作。这取决于实际问题是什么,但您需要在兼容模式下像在真正的 IE10 模式下一样彻底地测试它。
然后是你如何处理未来的网站的问题。IE11 及更高版本呢?兼容模式删除了 IE 可能具有的新功能,因此如果坚持使用 IE9 模式,您将无法使用文本阴影或 CSS 过渡等功能。您最终会想要使用这些功能,因此您需要在某个时候修复该站点;为什么不是现在?