Szukałem kodu, który pozwoliłby mi wykryć, czy użytkownik odwiedzający witrynę ma przeglądarkę Firefox 3 lub 4. Znalazłem tylko kod do wykrywania typu przeglądarki, ale nie wersji.
Jak mogę wykryć taką wersję przeglądarki?
Szukałem kodu, który pozwoliłby mi wykryć, czy użytkownik odwiedzający witrynę ma przeglądarkę Firefox 3 lub 4. Znalazłem tylko kod do wykrywania typu przeglądarki, ale nie wersji.
Jak mogę wykryć taką wersję przeglądarki?
Odpowiedzi:
Możesz zobaczyć, co mówi przeglądarka , i wykorzystać te informacje do logowania lub testowania wielu przeglądarek.
źródło
M[1] = tem[1]
zamiastM[2]
? Przy obecnym kodzie ciąg agenta użytkownika Opera 12.14Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14
zwraca wynikOpera 9.80 12.14
. IMO, poprawny wynik byłbyOpera 12.14
osiągnięty dzięki mojej sugestii.tem = ua.match(/\b(OPR|Edge)\/(\d+)/i); if (tem != null) return {name : tem[1] === 'OPR' ? 'Opera' : tem[1], version : tem[2]};
Mozilla/5.0 (Linux; Android 5.0; Nexus 9 Build/LRX21R; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.95 Safari/537.36 [FB_IAB/FB4A;FBAV/50.0.0.10.54;]
Jest to bardzo wybitny agent użytkownika, niestety, więc nie mogę go zignorować ...To poprawa odpowiedzi Kennebeca.
W ten sposób możesz uchronić się przed niejasnością kodu.
źródło
Łączy to odpowiedź Kennebecka (K) z odpowiedzią Hermanna Ingjaldssona (H):
źródło
Oto kilka wybitnych bibliotek, które obsługują wykrywanie przeglądarki od maja 2019 r.
Bowser autor: lancedikson - 3 761 ★ s - Ostatnia aktualizacja 26 maja 2019 r. - 4,8 KB
* obsługuje Edge oparty na Chromium
Platform.js autor bestiejs - 2250 ★ s - Ostatnia aktualizacja 30 października 2018 r. - 5,9 KB
jQuery Browser autor: gabceb - 504 ★ s - Ostatnia aktualizacja 23 listopada 2015 - 1,3 KB
Detect.js (zarchiwizowany) autor: darcyclarke - 522 ★ s - Ostatnia aktualizacja 26 października 2015 - 2,9 KB
Wykrywanie przeglądarki (zarchiwizowane) przez QuirksMode - Ostatnia aktualizacja 14 listopada 2013 - 884B
Ważne uwagi:
Dalsza lektura
źródło
Bowser biblioteka JavaScript oferuje tej funkcji.
Wydaje się być dobrze utrzymany.
źródło
Użyj tego: http://www.quirksmode.org/js/detect.html
źródło
Szukałem rozwiązania dla siebie, ponieważ jQuery 1.9.1 i nowsze usunęły tę
$.browser
funkcjonalność. Wymyśliłem tę małą funkcję, która działa dla mnie. Potrzebuje zmiennej globalnej (nazwałem mój _browser), aby sprawdzić, która to przeglądarka. Napisałem jsfiddle aby zilustrować, jak można go używać, oczywiście można go rozszerzyć na inne przeglądarki, po prostu dodając test dla _browser.foo, gdzie foo to nazwa przeglądarki. Zrobiłem tylko te popularne.wykryćBrowser ()
Aby sprawdzić, czy bieżącą przeglądarką jest Opera, zrób to
Edycja Naprawiono formatowanie, naprawiono wykrywanie IE11 i Opera / Chrome, zmieniono na browser Wynik z wyniku. Teraz kolejność
_browser
kluczy nie ma znaczenia. Zaktualizowano jsFiddle link .2015/08/11 Edytuj Dodano nową walizkę testową dla Internet Explorera 12 (EDGE), naprawiono mały problem wyrażenia regularnego . Zaktualizowano link jsFiddle .
źródło
Zwróci to tablicę, pierwszy element to nazwa przeglądarki, drugi element to pełny numer wersji w formacie ciągu.
źródło
jQuery poradzi sobie z tym całkiem nieźle ( jQuery.browser )
EDYCJA: Jak napisał Joshua w swoim komentarzu poniżej, właściwość jQuery.browser nie jest już obsługiwana w jQuery od wersji 1.9 ( więcej informacji na ten temat można znaleźć w informacjach o wersji jQuery 1.9 ). Zespół programistów jQuery zaleca stosowanie bardziej kompletnego podejścia, takiego jak dostosowanie interfejsu użytkownika do biblioteki Modernizr .
źródło
W czystym JavaScript możesz wykonać dopasowanie RegExp,
navigator.userAgent
aby znaleźć wersję Firefox:ffVersion
będzie,undefined
jeśli nie przeglądarką Firefox.Zobacz przykład roboczy →
źródło
Spójrz na
navigator.userAgent
-Firefox/xxx.xxx.xxx
jest określony na końcu.źródło
źródło
Napisałem detektor wersji oparty na odpowiedzi Hermanna Ingjaldssona, ale bardziej solidny i który zwraca obiekt zawierający dane nazwy / wersji. Obejmuje główne przeglądarki, ale nie przejmuję się mnóstwem przeglądarek mobilnych i mniejszych:
Następnie można go użyć w następujący sposób:
źródło
Zobacz demo tutaj .. http://jsfiddle.net/hw4jM/3/
źródło
Zrobiłem skrypt w kodzie ASP, aby wykryć przeglądarkę, wersję przeglądarki, system operacyjny i wersję systemu operacyjnego. Powodem, dla którego to zrobiłem w ASP, było to, że chcę przechowywać dane w bazie danych dziennika. Musiałem więc wykryć stronę przeglądarki.
Oto kod:
źródło
Ta strona wydaje się mieć całkiem niezły fragment, który używa tylko właściwości appString i appVersion w ostateczności, ponieważ twierdzi, że są one niewiarygodne w niektórych przeglądarkach. Kod na stronie jest następujący:
źródło
Dodanie własnej implementacji odpowiedzi Hermanna. Potrzebowałem wykrywania systemu operacyjnego, więc zostało to dodane. Zawiera także trochę kodu ES6 (ponieważ mamy transpiler), którego możesz potrzebować do ES5-ify.
Zwroty:
Object {browser: "Chrome", version: "50", os: "UNIX"}
źródło
Chcę udostępnić ten kod, który napisałem dla problemu, który musiałem rozwiązać. Został przetestowany w większości głównych przeglądarek i dla mnie działa jak urok!
Może się wydawać, że ten kod jest bardzo podobny do innych odpowiedzi, ale został zmodyfikowany, dzięki czemu mogę go użyć w postaci obiektu przeglądarki w jquery, który ostatnio dla mnie brakowało, oczywiście jest to kombinacja powyższych kodów, z niewielkimi ulepszeniami moją część zrobiłem:
źródło
źródło
Używam tego, aby uzyskać nazwę i numer (int) wersji faktycznej przeglądarki:
To działa
Chrom; Firefox; Safari; Internet Explorer (> = 9); Opera; Krawędź
Dla mnie.
źródło
Tutaj ma lepszą zgodność niż fragment kodu @kennebec;
zwróci nazwę i wersję przeglądarki (zwraca 72 zamiast 72.0.3626.96).
Testowane na Safari, Chrome, Opera, Firefox, IE, Edge, UCBrowser, również na urządzeniach mobilnych.
źródło
źródło
Napisałem to na moje potrzeby.
Uzyskuje informacje takie jak to, czy jest urządzeniem mobilnym, czy ma wyświetlacz siatkówki
Spróbuj
źródło
W przypadku dowolnej aplikacji PWA używającej kątowej możesz umieścić kod, aby sprawdzić, czy przeglądarka jest obsługiwana, czy nie w sekcji body index.html -
źródło
Oto wersja Java dla kogoś, kto chciałby to zrobić po stronie serwera za pomocą zwracanego ciągu
HttpServletRequest.getHeader("User-Agent");
Działa na 70 różnych konfiguracjach przeglądarki, których użyłem do testowania.
źródło
źródło