browser identifizieren
Hendrik
- browser
0 Cheatah0 R2-Einheit0 Hendrik
0 Joachim0 Hendrik
Hi firends,
ich habe http://www.Kais-Software.de.vu für 2 browser schrieben, für mozilla und für den IE, da er die mozilla version nicht richtig meistert.
Nun will ich aber nicht jeden besucher vorher fragen, welchen Browser er hat, sondern diesen automatisch via js identifizieren lassen. Ich habe zwar schon ein script, das diese Abreit macht, aber das erkennt nur
"IE oder nicht IE".
Bei Selfhtml habee ich leider keine lösung gefunden aber vieleicht kann mir einer von euch sagen, wo ich so ein schönes script finde.
Danke
Hendrik
Hi,
ich habe http://www.Kais-Software.de.vu für 2 browser schrieben,
das heißt, Du hast sie gegen 998 andere geschrieben. Nun ja.
für mozilla und für den IE, da er die mozilla version nicht richtig meistert.
Das Problem ist mit Sicherheit bei Dir begründet. Du hast Dich auf umfangreiche Fehlerkorrekturen gestützt, die außerhalb des IE nicht anzutreffen sind.
Nun will ich aber nicht jeden besucher vorher fragen, welchen Browser er hat, sondern diesen automatisch via js identifizieren lassen.
Erstens existiert kein Weg herauszufinden, ob die gelieferte Information auch korrekt ist; zweitens - was machst Du mit Usern, die kein JavaScript haben? Was machst Du mit Suchmaschinen?
Bemühe Dich lieber, die von Dir gemachten Fehler zu korrigieren. Links zu entsprechenden Helferlein wie dem W3C-Validator findest Du im Forum zuhauf.
Bei Selfhtml habee ich leider keine lösung gefunden
Das liegt daran, dass die Tipps bei SelfHTML in aller Regel gut sind.
wo ich so ein schönes script finde.
Lass es lieber. Es schadet Dir mehr, als es jemals nützen könnte.
Cheatah
Hallo Hendrik, das mit der Abfrage des Browser-Namens ist eine sehr beengende und vor allen Dingen antiquierte Herangehensweise. Du unterdrückst damit alle Browser, deren Namen du nicht kennst oder die zukünftig erscheinen werden. Außerdem lügen Browser wie "Opera" dich gnadenlos an: Der identifiziert sich in der Default-Einstellung als "Internet Explorer".
Sehr viel galanter ist es, den Browser nich nach seinem Namen zu fragen, sondern ihn zu fragen, welche JavaScript-Objekte er beherrscht.
Also z.B. so:
if (document.getElementById)
{
dann mache das hier
}
else
{
if (document.all)
{
dann mache das hier
}
}
elseif-Abfragen deswegen, weil es auch Browser gibt, die beide Objekte beherrschen und das könnte dann bei mangelhaften Abfragen zu chaotischen Bugs führen.
Danke für den Tipp aber ich werde dann doch lieber nur eine Version veröffentlichen und eine andere lösung finden...
hi,
Nun will ich aber nicht jeden besucher vorher fragen, welchen Browser er hat,
löblich.
Browser Identifikation anhand bekannter Objekte, lässt sich beliebig erweitern oder differenzieren.
// some known objects
var nc = !!(document.captureEvents && !document.getElementById);
var nc6 = !!(document.captureEvents && document.documentElement);
var opera = !!(document.getElementById && !document.documentElement);
var ie = !!document.all;
var ie4 = !!(document.all && !document.documentElement);
var ie5 = !!(document.all && document.documentElement);
var dom = !!document.getElementById;
var mac = !!(navigator.userAgent.indexOf("Mac")!=-1);
Bedenke:
Bei verschiedene Seiten fuer verschiedene Browser steigt der Wartungsaufwand enorm. Baue Deine Seiten lieber cross-Browserfaehig. Wenn Du viel Javascript einsetzt, solltest Du über eine Nur-Text-Variante nachdenken.
Gruesse Joachim
hi,
Nun will ich aber nicht jeden besucher vorher fragen, welchen Browser er hat,
löblich.
Browser Identifikation anhand bekannter Objekte, lässt sich beliebig erweitern oder differenzieren.
// some known objects
var nc = !!(document.captureEvents && !document.getElementById);
var nc6 = !!(document.captureEvents && document.documentElement);
var opera = !!(document.getElementById && !document.documentElement);
var ie = !!document.all;
var ie4 = !!(document.all && !document.documentElement);
var ie5 = !!(document.all && document.documentElement);
var dom = !!document.getElementById;
var mac = !!(navigator.userAgent.indexOf("Mac")!=-1);
Bedenke:
Bei verschiedene Seiten fuer verschiedene Browser steigt der Wartungsaufwand enorm. Baue Deine Seiten lieber cross-Browserfaehig. Wenn Du viel Javascript einsetzt, solltest Du über eine Nur-Text-Variante nachdenken.
Danke, ich hab wollte nur, dass im IE ein Script, das er nicht unterstützt, nicht angezeigt wird, dass habe ich aber nun wieder mit css gelöst, trotzdem danke, ich werde mir trotzdem das script kopieren, vieleicht kann ich es mal weitergeben....
Gruesse Joachim
Grüße Hendrik