选择的jQuery小部件在IE8的兼容性视图中不起作用

Ron*_*del 8 jquery internet-explorer jquery-chosen

我正在使用http://harvesthq.github.com/chosen/上的Chosen jQuery小部件.它在大多数浏览器的应用程序中运行良好,但在"兼容性视图"下的IE8中无效.这给我带来了一个问题,因为我公司的Intranet 兼容性视图是Intranet站点的默认设置.您可以通过转到上面的链接并切换到IE中的兼容性视图来测试我的问题.

我没有完全放弃它的原因是因为在这个页面http://davidwalsh.name/dw-content/jquery-chosen.php有人得到它在IE中的兼容性视图中工作(参见自己).

我正在使用jQuery 1.6.2和Chosen 0.9.5.兼容性视图下的Windows XP和IE 8.0.6001.如果我在开发工具中将浏览器模式切换到IE8,它可以正常工作,但我不希望每个用户都必须这样做.有没有人之前使用过这个插件并让它在IE8的兼容模式下工作?

<script type="text/javascript">    $("#groupsList").data("placeholder", "Select Groups").chosen();</script>
Run Code Online (Sandbox Code Playgroud)

kal*_*ali 14

我确实感觉到你的痛苦,为其中一家公司工作,默认情况下也启用此模式.我有同样的问题.而不是分叉selected.js你可以设置

<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Run Code Online (Sandbox Code Playgroud)

这将告诉IE使用其最新的渲染器渲染页面,在我们的例子中是IE8.

有点老问题,但我希望这有助于其他人.


Jon*_*ter 7

你知道的,我今天遇到了同样的问题.

David Walsh正在使用的版本是0.9.1.0.9.5中的一段代码完全禁用了MSIE 7及更低版本:

  if ($.browser.msie && ($.browser.version === "6.0" || $.browser.version === "7.0")) {
    return this;
  }
Run Code Online (Sandbox Code Playgroud)

我不完全知道IE在兼容模式下做了什么 - 在IE9中使用compat模式,至少,$.browser.version返回'7.0'.这将导致这个插件退出.

如果您真的想要,可以禁用该检查或应用此人在github问题上建议的代码更改.或者,您可以使用版本0.9.1,如David的演示.