Jak wykryć, czy przeglądarka Chrome używa jQuery?
Mam mały problem z funkcją działającą w chrome, która działa poprawnie w Safari, obie przeglądarki webkit...
Muszę dostosować zmienną w funkcji dla Chrome, ale nie dla Safari.
Niestety, używam tego do wykrywania, czy jest to przeglądarka webkit:
if ($.browser.webkit) {
Ale muszę wykryć:
if ($.browser.chrome) {
Czy Jest jakiś sposób, aby napisać podobne stwierdzenie (wersja robocza tego powyżej)?
10 answers
$.browser.chrome = /chrom(e|ium)/.test(navigator.userAgent.toLowerCase());
if($.browser.chrome){
............
}
UPDATE:(10x do @Mr. Bacciagalupe)
JQuery usunął $.browser
z 1.9 i ich najnowszym wydaniu.
Ale nadal możesz użyć $.przeglądarka jako samodzielna wtyczka, znaleziona tutaj
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-12 14:29:37
if(/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())){
alert('I am chrome');
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-17 02:53:48
Użytkownik Endless ma rację,
$.browser.chrome = (typeof window.chrome === "object");
Kod najlepiej wykrywa przeglądarkę Chrome za pomocą jQuery.
Jeśli używasz IE i dodałeś Googleprame jako wtyczkę to
var is_chrome = /chrome/.test( navigator.userAgent.toLowerCase() );
Kod będzie traktowany jako przeglądarka Chrome, ponieważ wtyczka Googleprame modyfikuje właściwość nawigatora i dodaje do niej chromeframe.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-16 11:11:16
To pytanie było już omawiane tutaj: JavaScript: Jak sprawdzić, czy przeglądarką użytkownika jest Chrome?
Proszę spróbować:
var isChromium = window.chrome;
if(isChromium){
// is Google chrome
} else {
// not Google chrome
}
Ale bardziej kompletną i dokładniejszą odpowiedzią byłoby to, ponieważ IE11, IE Edge i Opera również zwrócą true
dla window.chrome
Więc użyj poniższego:
// please note,
// that IE11 now returns undefined again for window.chrome
// and new Opera 30 outputs true for window.chrome
// and new IE Edge outputs to true now for window.chrome
// so use the below updated condition
var isChromium = window.chrome,
vendorName = window.navigator.vendor,
isOpera = window.navigator.userAgent.indexOf("OPR") > -1,
isIEedge = window.navigator.userAgent.indexOf("Edge") > -1;
if(isChromium !== null
&& isChromium !== undefined
&& vendorName === "Google Inc."
&& isOpera == false
&& isIEedge == false) {
// is Google chrome
} else {
// not Google chrome
}
Powyższe posty radzą używać jQuery.przeglądarka. ale API jQuery zaleca używanie tej metody .. (zobacz DOCS in API ). I stwierdza swoje funkcjonalność może zostać przeniesiona do wtyczki obsługiwanej przez zespół w przyszłej wersji jQuery.
JQuery API zaleca użycie jQuery.support
.
Powodem jest to, że ' jQuery.przeglądarka " używa agenta użytkownika, który może być sfałszowany i jest faktycznie przestarzały w późniejszych wersjach jQuery. Jeśli naprawdę chcesz użyć $.przeglądarka.. Oto link do samodzielnej wtyczki jQuery, ponieważ została ona usunięta z jQuery w wersji 1.9.1. https://github.com/gabceb/jquery-browser-plugin
Lepiej używać funkcji wykrywania obiektów zamiast wykrywania przeglądarki.
Również jeśli używasz Inspektora Google Chrome i przejdź do zakładki konsola. Wpisz "okno" i naciśnij enter. Następnie możesz wyświetlić właściwości DOM dla 'obiektu window'. Po zwinięciu obiektu można wyświetlić wszystkie właściwości, w tym właściwość "chrome".
Mam nadzieję, że to pomoże, chociaż pytanie brzmiało, jak zrobić z z jQuery. Ale czasami prosty javascript jest prostszy!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-20 18:11:59
UserAgent można zmienić. aby uzyskać większą wytrzymałość, użyj zmiennej globalnej określonej przez chrome
$.browser.chrome = (typeof window.chrome === "object");
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-08 11:33:40
var is_chrome = /chrome/.test( navigator.userAgent.toLowerCase() );
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-14 05:39:52
Chociaż nie jest to Jquery, sam używam jquery, ale do wykrywania przeglądarki użyłem skryptu na tej stronie kilka razy. Wykrywa wszystkie główne przeglądarki, , a następnie niektóre . Praca została wykonana dla Ciebie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-14 05:40:21
Niestety ze względu na najnowszą aktualizację Opery !!window.chrome
(i inne testy na obiekcie window) podczas testowania w Operze zwraca true.
Conditionizr zajmuje się tym za Ciebie i rozwiązuje problem opery:
conditionizr.add('chrome', [], function () {
return !!window.chrome && !/opera|opr/i.test(navigator.userAgent);
});
Sugerowałbym użycie go, ponieważ żadne z powyższych nie jest teraz ważne.
To pozwala na:
if (conditionizr.chrome) {...}
Conditionizr zajmuje się wykrywaniem innych przeglądarek i jest znacznie szybszy i niezawodny niż hacki jQuery.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-04 10:43:04
Jako szybki dodatek, a dziwię się, że nikt o tym nie pomyślał, przydałby się operator in
:
"chrome" in window
Oczywiście to nie jest używanie JQuery, ale pomyślałem, że to ujmę, ponieważ jest to przydatne w czasach, gdy nie używasz żadnych zewnętrznych bibliotek.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-06-08 18:36:22
Kiedy testuję odpowiedź @ IE, zawsze mam "true". Lepszy jest ten, który działa również @IE:
var isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);
Jak opisano w tej odpowiedzi: https://stackoverflow.com/a/4565120/1201725
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:10:39