Navigator. как лучше пользоваться?
Посоветуйте как лучше отфильтровать браузеры?
На какое свойство navigator ориентироваться при определении браузера? Из наблюдений могу сказать: navagator.appName == "Opera" // true для opera navagator.appName == "Microsoft Internet Explorer" // true для ms navigatot.vendor == "Apple Computer, Inc." // true для safari navigator.vendor == "Google Inc." // true для chrome navigator.oscpu // такое свойство есть только у firefox Тестил в свежих браузерах. Как вы ориентируетесь в браузерах? Посоветуйте способы определения (желательно без regEx) браузера не зависимо от версии. Может есть какой-то готовый небольшой(!) плагинчик? |
Вот плагин который поможет узнать название браузера:
<!DOCTYPE HTML>
<html>
<head>
<script>
function go() {
if (navigator.appName == "Opera") {
alert("opera");
}
if (navigator.appName == "Microsoft Internet Explorer") {
alert("ms");
}
if (navigator.vendor == "Apple Computer, Inc.") {
alert("safari");
}
if (navigator.vendor == "Google Inc.") {
alert("chrome");
}
if (navigator.oscpu) {
alert("firefox");
}
}
</script>
</head>
<body>
<button onclick="go();">узнать браузер</button>
</body>
</html>
Плагин успешно работает в: -ie 7,8,9 -safari 6.0 -opera 12.02 -firefox 15.0.1 -chrome 21.0.1180.89 |
еси у кого есть возможность посмотреть как он работает в старых версиях браузеров, буду рад если отпишитесь.
.. ну или предложите свой метод определения браузера ) |
Быстренько набросал давно уже:
var Browser = {};
if (/(Trident|Gecko|WebKit|KHTML|Presto)\W*([.,\w]+)*/i.test(navigator.userAgent)) {
Browser.layoutEngineName = RegExp.$1.toLowerCase();
Browser.layoutEngineVersion = RegExp.$2;
}
if (window.opera) {
Browser.name = 'opera';
Browser.version = opera.version();
} else if (/(MSIE|Firefox|Chrome|Safari|Konqueror)\W*([.,\w]+)*/i.test(navigator.userAgent)) {
Browser.name = RegExp.$1.toLowerCase();
Browser.version = RegExp.$2;
}
|
Riim,
мощно, зачот! :thanks: |
navigator.userAgent.indexOf('ключевое слово')
PS: в принципе не стоит разграничивать код по браузерам |
bes,
сенкс, что-то даже не подумал, что можно выцепить с помощью indexOf. В дебри полез :) Цитата:
|
Цитата:
|
Цитата:
|
да, сафари и хром повторяются. Ну они и работают более или менее идентично.
|
| Часовой пояс GMT +3, время: 12:51. |