Сегодня: 16:12:2025 Доброй вам ночи!

I live ExBB and CMS Limbo!  I live ExBB and CMS Limbo!
Логин :
Пароль :
Регистрация?  Забыли пароль? 
 


 Страниц (1): [1]   

> Без описания

  Супермодератор
Отправлено: 14 мая 2013 — 10:33
Post Id


 Покинул NordWest
Профессионал
Сообщений: 1842
Регистрация: 12.2011

Определение через ява-скрипт (на стороне клиента)
code:
<HTML>
<HEAD>
<TITLE> Определение версии браузера</TITLE>
<SCRIPT language=JavaScript>
function check_browser() {
var version = 0;
if (navigator.userAgent.indexOf ("MSIE 5") != -1)
document.write ("Internet Explorer 5.0");
else if (navigator.userAgent.indexOf("MSIE 4") != -1)
document.write ("Internet Explorer 3.0!");
else if (navigator.userAgent.indexOf ("MSIE 4.5") != -1)
document.write ("Microsoft Internet Explorer 4.5 for Macintosh");
else if (navigator.userAgent.indexOf ("Opera") != -1)
document.write("Opera");
else if (navigator.userAgent.indexOf ("Mozilla/5.0") != -1)
document.write ("Navigator 5 или выше (в т.ч. 6.2+)");
else if (navigator.userAgent.indexOf ("Mozilla/4.7") != -1)
document.write ("Navigator 4.7");
else if ………
else version = 8;
return true;
}
// -->
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT language=JavaScript>
document.write("Вы используете браузер: ");
check_browser();
</SCRIPT>
</BODY>
</HTML>



Определение через PHP (на стороне сервера)

code:
<?php
if (strpos($HTTP_USER_AGENT,"Opera") !==false)
{
$ua="Opera";
$uaVers = substr($HTTP_USER_AGENT,strpos($HTTP_USER_AGENT,"Opera")+6,4);
}
elseif (strpos($HTTP_USER_AGENT,"Gecko") !==false)
{
$ua="Netscape";
$uaVers = substr($HTTP_USER_AGENT,strpos($HTTP_USER_AGENT,"Mozilla")+8,3);
}
elseif (strpos($HTTP_USER_AGENT,"Windows") !==false)
{
$ua="Explorer";
$uaVers = substr($HTTP_USER_AGENT,strpos($HTTP_USER_AGENT,"MSIE")+5,3);
}
else
{
$ua=$HTTP_USER_AGENT;
$uaVers="";
}
?>


Файл с определением браузера с помощью PHP должен иметь расширение из числа обрабатываемых PHP-парсером или из числа обрабатываемых SSI-парсером и включать PHP-скрипт SSI-директивой

code:
<!--#include virtual="agent.php" -->


Для браузеров с отключенным JavaScript может оказаться полезным включение в страницу таких строк:
code:
<SCRIPT LANGUAGE="JavaScript"><!--
document.write('<' + '!--');
//-->
</SCRIPT>
<p style="color:red">Если вы хотите, чтобы сайт выглядел нормально, включите JavaScript!
Для броузера Internet Explorer и Windows XP с сервис-паком 2, щелкните по панели безопасности правой кнопкой мыши, и в ее контекстном меню выберите пункт "Разрешить заблокированное содержимое..."
<SCRIPT LANGUAGE="JavaScript"><!--
document.write('--' + '>');
//-->
</SCRIPT>

Если скрипт не поддерживается, в тексте отобразится предупредительная строка. Если поддерживается, запущенные перед и после предупредительной строки скрипты ее закоментируют.
 
 Top

  Супермодератор
Отправлено: 14 мая 2013 — 11:55
Post Id


 Покинул NordWest
Профессионал
Сообщений: 1842
Регистрация: 12.2011

Как сделать для каждого браузера свой стиль CSS на JavaScript ?

Проще всего определить нужный браузер с помощью JavaScript, после чего загрузить для него требуемый файл со стилями. Этот способ хорош еще тем, что позволяет узнать версию браузера, а не просто его название. Сам стилевой файл подключается через метод document.write, который в данном случае будет использоваться так:
code:
document.write("<link rel='stylesheet' href='style.css' type='text/css'>")


В общем случае определение браузера и ссылка на файл CSS для него происходит, как показано ниже.
code:
<html>
<head>
<script language="JavaScript">
Netscape4 = document.layer;
Netscape6 = Mozilla = (navigator.appName == "Netscape") && DOM;
Netscape7 = navigator.userAgent.indexOf("Netscape/7") >= 0;
Opera5 = window.opera && DOM;
Opera6 = Opera5 && window.print;
Opera7 = Opera5 && navigator.userAgent.indexOf("Opera 7") >= 0;
IE = document.all && !Opera5;
Firefox = navigator.userAgent.indexOf("Firefox") >= 0;

if(IE) document.write("<link rel='stylesheet' href='/ie.css' type='text/css'>");
else document.write("<link rel='stylesheet' href='/style.css' type='text/css'>");

</script>
</head>
<body>

...
</body>
</html>


Этот пример работает так: первый стиль для всех, кроме мозилы.

code:

<html>
<head>
<script language="JavaScript">
Firefox = navigator.userAgent.indexOf("Firefox") >= 0;

if(Firefox) document.write("<link rel='stylesheet' href='/firefox.css' type='text/css'>");
else document.write("<link rel='stylesheet' href='/style.css' type='text/css'>");

</script>
</head>
<body>

...
</body>
</html>


Не стоит считать, что придется писать отдельные стили для всех браузеров. Например, Netscape (версии 6 и старше), Mozilla и Firefox основаны на одном ядре под названием Gecko, поэтому работают c сайтами примерно одинаково. В какой-то мере по своему подходу близки браузеры Internet Explorer 6 и Opera 7, и в большинстве случаев они отображают результат в равной мере правильно. Получается, что обычно требуется создать всего два разных стиля, предназначенных для браузеров, принадлежавших к разным <лагерям>.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Записная книжка PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 

> Темы, похожие на тему "Определение версии браузера."
Темы Форум Информация о теме Обновление
WebChat - общайтесь в чате на любом сайте
Расширение для браузера позволяющее общаться в чате
Всё подряд Ответов: 0
Автор темы: AlexBLR
31 октября 2025 — 01:56
Автор: AlexBLR
Определение волнового сопротивления кабеля
Простой способ, позволяющий довольно точно определить тип кабеля
Всё подряд Ответов: 0
Автор темы: технарь
1 сентября 2025 — 11:15
Автор: технарь
 


Powered by ExBB v1.1.180311