Простой способ определения браузера с помощью HTML + JS
4 октября 2007 г.
Нашлось оригинальное решение, с помощью которого можно определить интернет-браузер, используемый веб-серфером. Способ работает в связке технологий HTML и JavaScript.
HTML-код:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <map id="browser" /''name="firefox" /""name="sleipnir_gecko" "name="safari" ""name="konqueror" /name="ie" name="opera" name="lynx" > </map> |
JavaScript-код:
1 2 3 | <script> document.write( document.getElementById('browser').getAttribute('name')); </script> |
Насколько я понял, как раз за счет разного понимания браузерами параметра “name” и именно данной последовательности их написания и происходит идентификация и определение нужного браузера.
Тест
Ваш браузер -
P.S. Есть еще один простой способ определения браузера - с помощью только HTML + изображения. Методика схожая, только не требуется JavaScript и вместо тега <map> используется <img>.
* * *
Сеть магазинов “Элит Букет” осуществляет круглосуточную доставку цветов и букетов в городе Екатеринбурге. Всегда только свежие цветы. Любой удобный способ оплаты.
автор: Dimox | рубрика Браузеры
Источник указан неправильно. Точнее его имя. Должно быть HedgerWow.
P.s. http://rmcreative.ru/news/id/1191335532/ ;)
Суть в том, что в источнике я указал не название сайта, а название статьи :).
P.S. Информацию об этом способе я сначала узнал от тебя, а только потом от HedgerWow. Штука интересная, поэтому решил тоже написать ;).
Вообще у тебя оно выглядит и читается лучше, чем у HedgerWow ;)
Эх, понять бы ещё как оно работает…
На этом коде сломался даже code-highlighter :)
Хм, за комплимент пасиба :). Лучше, наверное, потому, что с подсветкой синтаксиса и по-русски :)))))).
А как работает - я же предположил выше. Каждый браузер по-разному интепретирует написание “name”, соответственно “чужие” варианты пропускает, а “свой” как раз и выдает с помощью JS.
Pashka R., ага :) это потому, что, по идее, параметы хтмл-тегов пишутся в строку, без переносов. А здесь так сделано для наглядности, и плагин подсветки этого не понимает.
Dimox: Врядли из-за переносов — ведь первые три атрибута раскрасил правильно… код всё-таки не валидный… :)
То, что не валидный - это и понятно, тут такая абракадабра… :)
Подстветка “сломалась”, наверное, по причине последнего. А переносы все-таки виноваты, потому что 2-я строка начитается с табулятором.
feedreader прикидывается ie значит!
art, просто он использует движок IE.
А lynx у меня не определился :)
там просто пустое место :)
Safari 3.1 (525.13.3) под Win не определился. navigator.userAgent говорит следующее:
“Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13.3″ Знач на ядре мозиллы.
Можно теперь название вытащить в переменную php. Мне надо в зависемости от типа браузера, выполнять определенные действия. Подскажите как сделать плз?
даже в SAFARI под виндой пишет
Ваш браузер - firefox
А у меня и IE и Firefox пишут что это опера..
хотя здесь на странице тест сработал правильно.. наверное что-то не то сделала ..