Javascript редирект для браузера браузера версии пользовательского агента? - PullRequest
3 голосов
/ 13 сентября 2011

Я обнаружил, что мой сайт, интенсивно использующий JavaScript, не работает надежно (или вообще не работает) в IE9.

Он работает (обычно, но не всегда) с метатегом режима совместимости в заголовке, но я просто хочу создать страницу, которая, как я знаю, будет хорошо работать в IE9, а затем перенаправлять на нее обычную страницу, когда IE9 обнаружен. Обычная страница хороша в IE 7 и 8 (и во всех других браузерах, на которых я ее пробовал).

Может кто-нибудь дать мне какой-нибудь javascript, который это сделает? Спасибо!

Вот моя обычная страница:

http://ianmartinphotography.com/test-site/test/

Ответы [ 2 ]

18 голосов
/ 13 сентября 2011

Самый простой способ - использовать IE Conditionals .

Примечание. В IE10 и более поздних версиях удалена поддержка для этой функции.В современных браузерах широко распространенным способом условного отображения контента в целях совместимости является использование функция обнаружения . Modernizr - популярная библиотека, созданная для обработки обнаружения функций.

Например:

<!--[if IE 9]>
<script type="text/javascript">
    window.location = "http://www.ie9version.com";
</script>
<![endif]-->

Примеры с условного сайта:

<!--[if IE]><p>You are using Internet Explorer.</p><![endif]-->
<![if !IE]><p>You are not using Internet Explorer.</p><![endif]>

<!--[if IE 7]><p>Welcome to Internet Explorer 7!</p><![endif]-->
<!--[if !(IE 7)]><p>You are not using version 7.</p><![endif]-->

<!--[if gte IE 7]><p>You are using IE 7 or greater.</p><![endif]-->
<!--[if (IE 5)]><p>You are using IE 5 (any version).</p><![endif]-->
<!--[if (gte IE 5.5)&(lt IE 7)]><p>You are using IE 5.5 or IE 6.</p><![endif]-->
<!--[if lt IE 5.5]><p>Please upgrade your version of Internet Explorer.</p><![endif]-->

<!--[if true]>You are using an <em>uplevel</em> browser.<![endif]-->
<![if false]>You are using a <em>downlevel</em> browser.<![endif]>

<!--[if true]><![if IE 7]><p>This nested comment is displayed in IE 7.</p><![endif]><![endif]-->
0 голосов
/ 31 мая 2014
<script LANGUAGE="JavaScript"> 
<!-- 

  if( navigator.appName.toLowerCase().indexOf("microsoft") > -1 || 
      navigator.userAgent.toLowerCase().indexOf("msie") > -1 ) { 
    window.open("http://www.pobox.com/~qed/windoze.html", "Windoze",
"dependent=no,titlebar=no,scrollbars=yes" ); 
  } 

// Paul Hsieh 
// qed at pobox dot com 
// --> 
</script>

Источник: http://www.cexx.org/snicker/nomsie.htm

...