Выбранный виджет jQuery не работает в представлении совместимости IE8 - PullRequest
8 голосов
/ 14 декабря 2011

Я использую виджет Chosen jQuery из http://harvesthq.github.com/chosen/.. Он хорошо работает в моем приложении в большинстве браузеров, но не будет работать в IE8 под «представлением совместимости». Это представляет проблему для меня, потому что в интрасети моей компании Просмотр совместимости по умолчанию для сайтов интрасети. Вы можете проверить мою проблему, перейдя по ссылке выше и перейдя к представлению совместимости в 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>

Ответы [ 2 ]

14 голосов
/ 26 апреля 2013

Я чувствую вашу боль, работая в одной из тех компаний, у которой этот режим также включен по умолчанию. У меня такая же проблема. вместо разветвления selected.js вы можете установить

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

, который скажет IE визуализировать страницу с последним рендерером, в нашем случае IE8.

Вроде старый вопрос, но я надеюсь, что это поможет другим.

7 голосов
/ 14 декабря 2011

Вы знаете что-то, сегодня я столкнулся с точно такой же проблемой.

Версия, которую Дэвид Уолш использует для демонстрации, - 0.9.1. В 0.9.5 есть фрагмент кода, который полностью отключает его для MSIE 7 и ниже:

  if ($.browser.msie && ($.browser.version === "6.0" || $.browser.version === "7.0")) {
    return this;
  }

Я точно не знаю, что IE делает в режиме совместимости - по крайней мере, в IE9 с режимом сжатия, выполнение $.browser.version возвращает '7.0'. Это заставит этот плагин просто выйти.

Если вы действительно хотите, вы можете отключить эту проверку или применить изменение кода, предложенное кем-то по этой проблеме github . С другой стороны, вы можете просто использовать версию 0.9.1, как в демоверсии Дэвида.

...