Du bist nicht eingeloggt! Möglicherweise kannst du deswegen nicht alles sehen.
  (Noch kein mods.de-Account? / Passwort vergessen?)
Zur Übersichtsseite
Hallo anonymer User.
Bitte logge dich ein
oder registriere dich!
 Moderiert von: Che Guevara


 Thema: Ajax, Tabs und Opera
erste ungelesene Seite | letzter Beitrag 
psyched

psyched
Hallo,

ich versuche eine kleine Seite zu schreiben, die 4 Tabs hat.
Beim Klick auf die Tabs wird per XMLHttpRequest der Inhalt für die Seite geladen, dazu wird der Tab optisch verändert um zu erkennen auf welcher Seite man gerade ist.
Dies geschieht natürlich durch Javascript.

Leider funktioniert es bei mir nur mit Firefox, Opera lädt die Requests gar nicht (keine Ahnung warum), und stellt die Farbe der Tabs auch nicht um.
Im IE 6 funktionieren die Requests und der Tabwechsel, allerdings sind die Tabs oben abgeschnitte, auch das ist mir ein Rätsel. Den IE 7 habe ich nicht, wäre super wenn jemand das ausprobieren könnnte, idealerweise mit Screenshots.

Die besagte Seite gibts hier

Ich bin am Ende mit meinem Latein, bitte helft mir weiter!


/Ach, und Login Daten braucht ihr natürlich keine, die Tabs funktionieren auch so, nicht aber die Uploads Augenzwinkern

// Und Siggi, hier haste mal ein Beispiel für ne Macke an Opera Augenzwinkern
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von psyched am 12.12.2007 18:01]
12.12.2007 17:47:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
*Reeno*

Leet
Nimm doch für den Ajax-Request Prototype, jQuery oder wie die alle heißen. Die funktionieren so gut wie in allen Browsern.
12.12.2007 18:07:03  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Ne, ich will keine 80kb Javascript Library da reinpacken.

Eigentlich sollte das doch mit Opera auch einwandfrei funktionieren, XMLHttpRequest() kennt der doch als Funktion.
Und Ajax hat mit eben dieser Lib vor ein paar Tagen einwandfrei funktioniert, zwar nur indem "It works" ausgegeben wird aber das macht ja keinen Unterschied.
Außerdem ist es seltsam dass Opera dieses
active(this)
einfach so ignoriert.

Wirklich toll wärs auch zu wissen wie ich beim IE einen Rand obenhin bekomme.

/Ich glaube es liegt irgendwie daran dass Opera das href="#" Attribute vorzieht, da das ja nix macht passiert nichts.
Dem spricht entgegen dass ein
href="javascript:..."
nichts an der Sache ändert, genausowenig wie ein
return false
am Ende vom onclick Attribut.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von psyched am 12.12.2007 18:15]
12.12.2007 18:10:25  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
...
Na super, jetzt spinnt der IE auch rum und markiert die Tabs erst wenn man 2mal drauf klickt.
So ein Haufen Scheisse Codemüll.
12.12.2007 18:17:08  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
rABBI

Arctic
kann es sein, dass du in irgendeinem alten cache rumrührst? ich hab die seite grad mit opera und firefox ausprobiert und die können beide das gleiche: tabs wechseln.

links2 scheint übrigens kein ajax zu können.
12.12.2007 18:45:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
Ja... ich habs gerade mal getestet. Geht wunderbar in Opera.
12.12.2007 18:47:42  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Weil ichs mittlerweile gerichtet habe

/Hat denn keiner ne Idee wegen der dummen IE Tabs ohne border? traurig

// Auch das ist gegessen.
Danke für die Hilfe, kann gegessen werden.
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von psyched am 12.12.2007 19:49]
12.12.2007 19:40:55  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
Nur mal so als Proof of Concept das es nicht an Opera liegt :D

Hat mich jetzt etwa 20 Minuten gekostet und läuft im Opera, Firefox und täte wohl auch im IE6 wenn der mit dem MIME-Type klarkäme Breites Grinsen
13.12.2007 2:20:16  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
...


Kommt bei beiden Tabs :x
13.12.2007 10:01:45  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
rABBI

Arctic
schon mal auf anderen rechnern gecheckt? sein PoC tut hier wunderbar. ich würd an deiner stelle mal deine konfiguration checken.
13.12.2007 10:06:32  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Mit Opera funktionierts bei mir, der IE bietet die xhtml Datei zum Download an.
13.12.2007 12:20:52  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
Naja, was sein könnte ist, dass dein FireFox so frei ist und die per XmlHttpRequest geholte Datei auch validiert bevor er sie akzeptiert. Und in der Tat sind die nachgeladenen Seiten nicht XHTML1.1 konform Breites Grinsen

// Wobei ich auch gar keine validierung nach XML erwarten würde, da ich vom XMLHttpRequestObject lediglich den nakten Content hole, keinen XML-DOM-Baum. Ob sich der FF da jetzt richtig oder falsch verhält, darüber kann man streiten oder spezifikationen von W3C wälzen.

Was allerdings an der funktion des Javascriptes erstmal nichts ändert Breites Grinsen

// Und zum fehlverhaltenvom IE sagte ich ja bereits, dass dieser mit dem für XHTML vorgesehen MIME-Type nicht umgehen kann. IE Fehler. Ich halte mich weitesgehend an die geltenden Standards
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von GH@NDI am 13.12.2007 15:45]
13.12.2007 15:41:58  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Um das jetzt alles zusammenzufassen:

Jeder sollte Textbrowser benutzen.
13.12.2007 22:29:21  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
rABBI

Arctic
gott verhüte, nein. oder kennst du einen textbrowser, der ajax kann? jeder sollte standardkonforme technik einsetzen.
13.12.2007 23:52:10  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Ja, natürlich Breites Grinsen
14.12.2007 0:19:13  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Meister Zopf

meister_zopf
Man darf den Ajax Content nur nicht mit XML Content-type Header senden, sondern als HTML, dann muckt der FF nicht rum (was er bei XML Header zu recht tut imho).

¤: Oder text/plain anstatt HTML, da man ja auch kein komplettes HTML Dokument sendet.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Meister Zopf am 14.12.2007 22:28]
14.12.2007 22:27:17  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
psyched

psyched
Evtl hilfts ja responseXML anstatt responseText zu nehmen wenn man XML zurückkriegt...
15.12.2007 3:45:46  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
responseXML gibt dir einen DOM Baum zurück, während responseText einfach nur den Body des HTTP-Requests durchreicht. Deswegen kann man hier ja auch evtl. streiten ob bei der Verwendung von responseText eine validierung der Übergebenen Daten nötig/gewünscht ist. Lade ich z.B. reine Taten einer Textatei nach (ohne HTML, XML, oer sonst was) würde diese Datei weder als HTML noch als XML oder XHTML validieren, da ja keine entsprechenden Root-Knoten definiert sind.

Und aus sicht des zu veränderten X/HTML Code ist es ja auch druchaus vertetbar, innerhalb eines gültigen Nodes der PCDATA empfangen darf, auch einfach schlicht PCDATA über die Leitung zu holen und direkt einzufügen
15.12.2007 6:21:00  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: Ajax, Tabs und Opera


mods.de - Forum » Webdesign & Coding » 

Hop to:  

Thread-Tags:
ajax  css  tabs 
| tech | impressum