mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 28.03.2024 19:27 Benutzername: Passwort: Auto-Login

Thema: [javascript] Safari Version 1 erkennen vom 21.06.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [javascript] Safari Version 1 erkennen
Autor Nachricht
Raumwurm
Threadersteller

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 21.06.2007 18:41
Titel

[javascript] Safari Version 1 erkennen

Antworten mit Zitat Zum Seitenanfang

Hi Leutz,
wie zum Teufel erkennt man einen Safari kleiner der
Version 2.x. per JavaScript.

appVersion, appCodeName, appName etc.gibt nichts
versionsbezügliches zurück (oder zumindest nichts was
für mich offensichtlich wäre).

Oder ist der Safari grundsätzlich mit dem Konqueror
vergleichbar? Wenn ja, entspricht der Konqueror 2.x
dem Safari 1.x? Wenn nein, wem dann?

In dieser Liste ist doch mit »kq2« der Konqueror gemeint?
http://www.lipfert-malik.de/webdesign/tutorial/bsp/browser_js_test.html
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Do 21.06.2007 18:48
Titel

Antworten mit Zitat Zum Seitenanfang

Auch wenn der Safari auf dem Konqueror-Code bzw. auf der KHTML-Engine basiert, unterscheiden die sich doch in einigen Punkten.
Wie ich gehört habe, gibt es einige Punkte in der CSS-Darstellung, wo sich Konqueror und Safari wohl anders verhalten.
Daher wäre ich vorsichtig damit, Safari und Konqueror gleich zu behandeln.
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Mark-Korb

Dabei seit: 11.04.2007
Ort: -
Alter: 38
Geschlecht: Männlich
Verfasst Do 21.06.2007 19:33
Titel

Antworten mit Zitat Zum Seitenanfang

Aber mal so neben bei, wer hat den noch Safari1? Wird doch Automatisch von Apple gupdated. Zumindest bei meinem auf Arbeit.
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Do 21.06.2007 20:09
Titel

Antworten mit Zitat Zum Seitenanfang

Ja, eigentlich hat jeder Browser so etwas wie eine automatische Update-Funktion.
Windows hat das "Windows-Update", worüber auch der MSIE aktualisiert werden kann, Mac OS X hat sein Update-Programm, womit der Safari geupdated werden kann.
Der Firefox kann automatisch über neue Versionen informieren. Opera bietet auch so etwas.

Aber das hilft nicht viel...
Zum einen kann man die automatische Update-Version des Betriebssystems abschalten.
Und zum anderen, will gar nicht jeder immer die neuste Version installieren oder kann es nicht.

Der MSIE 7 läuft beispielsweise nicht, wenn man noch mit Windows 2000 arbeitet...

Naja und nur weil es eine automatische Update-Funktion gibt und weil ein Browser ohnehin nicht besonders weit verbreitet ist, heißt das ja nicht, daß man keine Rücksicht darauf nehmen sollte.
Ja, wenn ich meine Logfiles auswerte, liegt der Prozentsatz der Safari-User unter 1%.
Trotzdem will ich diesen Browser nicht ausschließen...
  View user's profile Private Nachricht senden
Raumwurm
Threadersteller

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 21.06.2007 20:11
Titel

Antworten mit Zitat Zum Seitenanfang

@rob: jo, danke Dir für den Hinweis. Werde da morgen einfach
mal im Dom rumschnuppern. window.clientInformation sieht ja
recht vielversprechend aus.

@mark-korb: da wäre z.B. der Cube bei mir in der Arbeit.
Der läuft mit so nem alten OS X (Panther glaube ich - müsste
ich mal schauen) - da updatet sich nix, erst ab Tiger ist der
Safari 2.0 dabei (wenn ich mich nicht täusche).
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Do 21.06.2007 22:11
Titel

Antworten mit Zitat Zum Seitenanfang

Aber wozu ist denn die genaue Browsererkennung wichtig?

Wenn ich mit JS programmiere, dann mache ich niemals etwas am Useragent-String bzw. an der Browseridentifikation fest.
Einige Browser kann man ja so einstellen, daß sie sich als anderer Browser ausgeben.
Dann würde das Script versagen.

Daher frage ich nach vorhandenen Eigenschaften wie:
if (document.layers)
oder
if (document.all)
oder
if (document.getElementById)
oder was auch immer...

Kennt der Browser eine bestimmte Eigenschaft, dann kann ich damit arbeiten, kennt er sie nicht, muß ich einen anderen Weg nutzen.
Das funktioniert dann unabhängig von der Browseridentifikation.

Und wenn es sich nicht um ein Script, sondern um CSS handelt, dann setze ich halt CSS-Hacks (und Conditional Comments für den MSIE) ein und gebe keinem Browser mit JS ein Stylesheet, abhängig vom Browsernamen, zu futtern.

Was genau möchtest du denn machen?
Warum ist es so wichtig, den Safari 1 zu erkennen?
Vielleicht kann man die Sache bei dir ja anders angehen...
  View user's profile Private Nachricht senden
Raumwurm
Threadersteller

Dabei seit: 21.12.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Fr 22.06.2007 08:15
Titel

Antworten mit Zitat Zum Seitenanfang

In dem Fall stellt Safari eine ganz banale Html
Seite einfach falsch da, Beispiel:
boxtest.html

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>boxtest</title>
<style type="text/css">
<!--
HTML {
   height:100%;
}
BODY {
   height:100%;
   padding:0;
   margin:0;
   text-align:center;
}
DIV#box {
   position:relative;
   top:50%;
   width:400px;
   height:300px;
   background:red;
   margin:-150px auto auto auto;
}
-->
</style>
</head>

<body>
<div id="box">&nbsp;</div>
</body>
</html>


Das top:50% wird einfach ignoriert bzw. im Grunde
genommen wohl das heigth:100% im html,body.

Einen Css-Hack für Safari ist mir bisher unbekannt.
Kennt da jemand einen?

Wg. Javascript-Abfrage:
Normalerweise würde ich ja auch gern über eine
Eigenschaft gehen, aber lt. der Liste finde ich auf
Anhieb nichts welches den Safari entlarven würde,
geschweige denn die Version 1.

Noch schwieriger wirds ja, dass selbst Safari in der
Version 1.0.4 window.RegExp, document.dispatchEvent,
document.readyState, document.getElementsByTagNameNS,
window.clientInformation
alles mit true zurück-
gibt - obwohl »kq2« das nicht mal kennen dürfte... * Keine Ahnung... *

navigator.appVersion gibt
5.0 (Macintosh; U; PCC Mac OS X; de-de) AppleWebKit/
85.8.5 (KHTML, like Gecko) Safari/85.8.1
zurück. Einziger Ansatz wäre das »85.8.x« theoretisch...


//edith: ah, Tatsache so ginge es:
var safari = (navigator.userAgent.indexOf('Safari/85.') > 0 || navigator.userAgent.indexOf('Safari/125.') > 0);

Das scheint die Build-Nr. zu sein. Nur woher bekommt man
alle Versionsnummern?

//edith2: Alle Build-Nummern:
http://developer.apple.com/internet/safari/uamatrix.html


Zuletzt bearbeitet von Raumwurm am Fr 22.06.2007 08:30, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Fr 22.06.2007 12:14
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
Wg. Javascript-Abfrage:
Normalerweise würde ich ja auch gern über eine
Eigenschaft gehen, aber lt. der Liste finde ich auf
Anhieb nichts welches den Safari entlarven würde,
geschweige denn die Version 1.

Wäre in diesem Fall dann auch nicht so sinnvoll...

Mit der Frage nach den Eigenschaften meinte ich, daß es sinnvoller ist, zu fragen, was ein Browser kann und dann darauf zu reagieren, als den Weg über den Namen zu gehen (der vielleicht noch nicht mal echt ist).
Da es sich bei dir aber gar nicht um JS-Programmierung geht, bringt das eh nichts...


Gestern hätte ich dir noch ein paar Links zu Safari und CSS-Hacks posten können.
Jetzt sitze ich vor einer anderen Kiste und hab meine Bookmarks nicht...

Aber schau mal hier:
http://forum.de.selfhtml.org/archiv/2007/5/t152291/

Da hab ich mal ein paar Links zu Safari-CSS-Hacks gepostet. Einiges davon ist alt und funktioniert mittlerweile im aktuellen Safari nicht mehr.
Das könnte aber vielleicht genau das sein, was du brauchst...
  View user's profile Private Nachricht senden
 
Ähnliche Themen [erledigt] flash version IE erkennen
Erkennen unter welcher Version abgespeichert wurde?
JavaScript erkennen
[Javascript] Nur im safari tut es nicht?
[Mac] Safari und Javascript - nochmals
[SAFARI] Javascript debugging
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.