Веб-программирование

Обучение программированию

Делаете первые шаги в программировании? Представляем вашему вниманию пошаговое обучение самостоятельного создания сайтов любой сложности на примерах! На страницах сайта KobRU вы найдете все самое необходимое, для того чтобы по праву считаться веб-мастером по созданию привлекательных динамически изменяемых интернет-страниц, используя основные инструменты веб-разработчиков: HTML; CSS; PHP; MySQL; JAVASCRIPT и другие. Сайт KobRU - наиболее полное и качественно структурированное руководство с предельно понятными пояснениями и поэтапным изложением материала, который поможет вам в совершенстве овладеть искусством программирования. Добавьте динамики и интерактивность в свои веб-проекты!

Вход в личный кабинет

Забыли пароль?

Не зарегистрированны?


Конструкторское Web-бюро
11.01 Получение сведений об обозревателе

Автор: Denisido

Дата: 2010-11-18

Межбраузерные войны

В предыдущих урокам мы немного затронули эту тему, а сейчас попробуем более подробно обсудить ее. Начнем с того, что появление каждого нового браузера приносит головную боль разработчиком сайтов из-за больших проблем несовместимости, несмотря на то, что консорциум W3C пытается выработать определенные стандарты для корректного отображения страниц. В результате такой несогласованности некоторые Web-старницы по-разному отображаются в разных Web-обозревателях.

Информация о системе и браузере

Все необходимые сведения о Web-обозревателе и системе у пользователя можно узнать при помощи объекта Navigator. Данный объект поддерживаем множество свойств и один бесполезный метод javaEnabled, который не принимает параметров и возвращает true, если выполняются сценарии JavaScript и false - в противном случае:


Самый сложный и разнообразный формат возвращаемых данных у свойств appVersion и userAgent, поэтому для идентификации браузера сперва используем свойство appName объекта Navigator.

Определение Web-обозревателя пользователя

Чтобы посмотреть что возвращает это свойство, вставьте в строку ваших браузеров следующий код: javascript:alert(navigator.appName). Т.е. это имя программы обозревателя и не более того.

Для того, чтобы знать каким браузером пользуется пользователь, напишем следующий код:

// ф-ция, возвращающая имя обозревателя
  
function getBrowser() {
                      switch(navigator.appName) {
                                   case 'Microsoft Internet Explorer' : return 'IE'; break;
                                   case 'Opera' : return 'O'; break;
                                   case 'Netscape' : return 'NS'; break;
                                                }; // end switch
                      }; // end func getBrowser
Запустить!
if(getBrowser() == 'IE') {
                 alert('Вы используете Internet Explorer');
                        }
else if(getBrowser() == 'O') {
                alert('Вы используете Opera');
                        }
else if(getBrowser() == 'NS') {
                          alert('Вы используете Netscape'); // Либо Firefox, Chrome или Safari 
                        }
else                    {
                          alert('Ваш браузер не определен!'); // Неизвестный браузер 
                        }; // end if else

Напишем еще одну, дополнительную функцию, для того, чтобы более точно определять Web-обозреватель пользователя, так как, к примеру, браузер Avant Browser тоже может представиться в качестве IE, а возвращаемое значение NS может быть приписано сразу трем браузерам: Firefox, Google Chrome и Safari. Итак, пришем скрипт:

Запустить!
// Определяем браузер пользователя
  
        var browser = navigator.userAgent;
function getBrowser() {
                      switch(navigator.appName) {
                                   case 'Microsoft Internet Explorer' : return 'IE'; break;
                                   case 'Opera' : return 'O'; break;
                                   case 'Netscape' : return 'NS'; break;
                                                }; // end switch
                      }; // end func getBrowser
// ф-ция для уточнения браузера пользователя
function getBrowserStrict() {
        if (browser.indexOf('Avant Browser') != -1) { 
	                                  return "AB"; 
	                                  }
        else if(browser.indexOf('Firefox') != -1) { 
	                                  return "FF"; 
	                                  }
        else if(browser.indexOf('Chrome') != -1) { 
	                                  return "GC"; 
	                                  }
        else if(browser.indexOf('Opera') != -1) { 
	                                  return "O"; 
	                                  }
        else if(browser.indexOf('Safari') != -1) { 
	                                  return "SF"; 
	                                  }
	else {return getBrowser();};
                            }; // end func getBrowserStrict
// ******** Выводим сообщения об Web-обозревателе пользователя *******//
switch (getBrowserStrict()) {
    case "AB" : alert('Ваш браузер Avant Browser');      break;
    case "FF" : alert('Ваш браузер Firefox');            break;
    case "GC" : alert('Ваш браузер Google Chrome');      break;
    case "IE" : alert('Ваш браузер Internet Explorer');
		var regex = /\bMSIE\s\d+\.\d+\b/;
		var result =  browser.match(regex);
		result = Number(result[0].substring(5,result[0].length));
			if(result < 8) {
					alert('Ваша версия браузера IE'+result+' является устаревшей. Загрузите последнюю версию!');
					};               break;
    case "O"  : alert('Ваш браузер Opera');              break;
    case "SF" : alert('Ваш браузер Safari');             break;
    default   : alert('Ваш браузер НЕ определен');
                            }; // end switch



Оцените материал по 5-ти бальной шкале: 1 2 3 4 5



Коментарии:

Добавить новый коментарий:

Текст коментария:

Введите результат с картинки

Просмотров: 6688

Метки раздела JavaScript

Основы web программирования, var javascript, javascript функции, javascript обучение, javascript простые примеры, html javascript, javascript примеры, javascript random, уроки сайтостроения, java script, регулярные выражения, appendchild javascript, javascript бесплатно, javascript document write, javascript справочник, javascript примеры.