Javascript navigator.appCodeName gibt mir nur Mozilla zurück
TemporeMovie
- javascript
Egal welchen browser ich Benutze, es kommt immer das gleiche bei raus,
ich habe eine function geschrieben:
function currentBrowser()
{
var browserName = navigator.appCodeName;
alert(browserName);
}
doch leider gibt mein Browser mir auch im Internet Explorer nur "Mozilla" aus, auch auf dem Handy (im normalen Samsung Browser) bekomme ich nur "Mozilla" zurück, sieht jemand meinen Fehler ?
Das ganze ist auf der Website temporemovie.funpic.de sichtbar (im Home auf dem Test Button)
Hallo,
du machst keinen Fehler. appCodeName liefert aus historischen Gründen »Mozilla«. Netscape 2.0 hatte damit angefangen und andere Browser taten es ihm nach.
http://de.selfhtml.org/javascript/objekte/navigator.htm#app_code_name
Aussagekräftiger ist der http://de.selfhtml.org/javascript/objekte/navigator.htm#user_agent@title=userAgent, aber auch darin kommen verwirrende Begriffe wie »Mozilla« vor. Eine Browsererkennung ist nicht trivial, und meistens unnötig oder sogar kontraproduktiv.
Was hast du genau mit der Information vor?
Viele Grüße
Mathias
Eine Browsererkennung ist nicht trivial, und meistens unnötig oder sogar kontraproduktiv.
Was hast du genau mit der Information vor?
Ich hätte evtl. Interesse an einer Browserweiche mit einem Warnhinweis für IE7 und 8, da hier einige JavaScript-Befehle nicht gehen, z.B bei Deiner Antwort hier:
http://forum.de.selfhtml.org/?t=217018&m=1489645
Eigentlich müsste ich als Anfänger bei jedem JavaScript-Befehl/Aufruf caniuse.com fragen und dann nach
http://molily.de/js/browser.html
eine Fähigkeitserkennung durchführen.
Einen einfachen Weg ohne Arbeit gibt's wahrscheinlich nicht, oder?
LG Matthias Scharwies
Hallo!
Ich hätte evtl. Interesse an einer Browserweiche mit einem Warnhinweis für IE7 und 8, da hier einige JavaScript-Befehle nicht gehen, z.B bei Deiner Antwort hier:
http://forum.de.selfhtml.org/?t=217018&m=1489645
Function.prototype.bind lässt sich problemlos nachrüsten.
Die angesprochenen Underscore und Lodash sind Bibliotheken, die derartige Browserunterschiede nivellieren und eine sichere Schnittstelle anbieten.
Eigentlich müsste ich als Anfänger bei jedem JavaScript-Befehl/Aufruf caniuse.com fragen und dann nach
http://molily.de/js/browser.html
eine Fähigkeitserkennung durchführen.
Ja. Sofern eine Fähigkeitenerkennung denn nötig ist. Mithilfe von Bibliotheken und Polyfills sorgt man dafür, dass der eigentlich Code sich um Browserunterschiede nicht mehr scheren muss.
jQuery und der ECMAScript-5-Shim sind gute Beispiele. Der ES5-Shim rüstet auch Function.prototype.bind nach.
Grüße
Mathias
Vielen Dank für die Links, ich werde sie durcharbeiten!
Hallo
Egal welchen browser ich Benutze, es kommt immer das gleiche bei raus,
ich habe eine function geschrieben:
function currentBrowser()
{
var browserName = navigator.appCodeName;
alert(browserName);
}
>
> doch leider gibt mein Browser mir auch im Internet Explorer nur "Mozilla" aus, auch auf dem Handy (im normalen Samsung Browser) bekomme ich nur "Mozilla" zurück, sieht jemand meinen Fehler ?
Dass es den nicht gibt, hat molily ja schon geschrieben. Warum, kannst du [hier](http://webaim.org/blog/user-agent-string-history/) oder [dort](http://www.peterknaak.de/uas.html) (und auch an anderen Stellen) lesen.
Tschö, Auge
--
Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
Terry Pratchett, "Wachen! Wachen!"
ie:{ fl:| br:> va:) ls:[ fo:) rl:( ss:| de:> js:| zu:}
[Veranstaltungsdatenbank Vdb 0.3](http://termindbase.auge8472.de/)