Если IE 6, я хочу произвести предупреждение и бесплатную загрузку другие значки браузера

Я соглашаюсь с @annakata, что этот вопрос нужен еще в некотором разъяснении, но здесь очень, очень простой пример того, как установить onclick обработчик событий для переключателей:

<html>
 <head>
  <script type="text/javascript">
    window.onload = function() {

        var ex1 = document.getElementById('example1');
        var ex2 = document.getElementById('example2');
        var ex3 = document.getElementById('example3');

        ex1.onclick = handler;
        ex2.onclick = handler;
        ex3.onclick = handler;

    }

    function handler() {
        alert('clicked');
    }
  </script>
 </head>
 <body>
  <input type="radio" name="example1" id="example1" value="Example 1" />
  <label for="example1">Example 1</label>
  <input type="radio" name="example2" id="example2" value="Example 2" />
  <label for="example1">Example 2</label>
  <input type="radio" name="example3" id="example3" value="Example 3" />
  <label for="example1">Example 3</label>
 </body>
</html>
7
задан hakre 16 September 2012 в 20:55
поделиться

5 ответов

Вы можете получить несколько примеров, которые не требуют создания сценариев на стороне сервера, на ie6nomore.com .

Они используют Функция условных комментариев в IE, например:

<!--[if lt IE 7]>
Your browser is outdated!
<![endif]-->

Но примеры на сайте фактически предлагают ссылки на другие браузеры. Конечно, вы можете создать свою собственную версию, которая лучше соответствует вашему макету.

Конечно, вы можете сделать это на стороне сервера, если хотите, поскольку вы все равно используете PHP. Другие примеры здесь с использованием $ _ SERVER ["HTTP_USER_AGENT"] должны помочь вам начать работу. Использование get_browser может быть излишним, поскольку для его работы требуется довольно большой файл данных.

Если вас интересует только обнаружение серверной части старых версий IE, это должно сделать:

preg_match('/; MSIE (\d+.\d+)/', $_SERVER['HTTP_USER_AGENT'], $matches);

if (count($matches) > 1 && $matches[1] <= 6.0)
{
    echo "Your browser is outdated";
}
12
ответ дан 6 December 2019 в 15:25
поделиться

Используйте условные комментарии IE на своей странице

<!--[if lt IE 7]>
include a warning here (in an iframe, perhaps, to save extra bandwidth)
<![endif]-->
1
ответ дан 6 December 2019 в 15:25
поделиться

Вы можете проверить переменную $ _ SERVER ['HTTP_USER_AGENT'] для IE.

if (eregi("MSIE", $_SERVER["HTTP_USER_AGENT"]) ||
   eregi("Internet Explorer", $_SERVER["HTTP_USER_AGENT"])) {
   // IE
}
0
ответ дан 6 December 2019 в 15:25
поделиться

В качестве альтернативы вы также можете проверить это с помощью JavaScript

/*
*   Check whether the current browser is IE6
*/
function isBrowserIE6() {
    if (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7) {
        return true;
    } else {
        return false;
    }
}

(Вышеупомянутое будет работать только в среде ASP.net. Вот сообщение в блоге , которое обрабатывает проверку браузера IE собственный способ).

Затем вы добавляете элемент контейнера HTML на свою страницу

<div id="ie6BrowserWarning" style="display:none">
   Your browser is outdated. Please download one of the alternative browsers!
   <!-- Set of links to Firefox, Chrome, Safari, Opera,... -->
</div>

И при загрузке страницы вы делаете

<html>
<head>
<script type="text/javascript">

  function doIE6WarningCheck()
  {
     var element = document.getElementById("ie6BrowserWarning");
     var isIE6 = isBrowserIE6();
     if(element != null && isIE6 == true)
     {
        element.style.display = "block";
     }
  }
</script>
</head>
<body onLoad="doIE6WarningCheck()">
   <div id="ie6BrowserWarning" style="display:none">
      Your browser is outdated. Please download one of the alternative browsers!
      <!-- Set of links to Firefox, Chrome, Safari, Opera,... -->
   </div>
</body>
</html>

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

0
ответ дан 6 December 2019 в 15:25
поделиться

Вы легко сможете это сделать, используя встроенную функцию get_browser .

Если вы хотите увидеть, как будет выглядеть результат при посещении IE 6, вы можете взять строку пользовательского агента с UserAgentString.com , чтобы протестировать ее.

0
ответ дан 6 December 2019 в 15:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: