PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kein mouseover-effekt mit opera 7.50


86318
2004-05-25, 22:51:28
mit opera 7.50 (zumindest unter linux, mit windows habe ich es nicht getestet) funktioniert der mouseover-effekt in den artikeln hier auf 3dcenter nicht.
auf anderen seiten funktioniert der mouseover-effekt aber einwandfrei.

könnte natürlich auch ein fehler in opera sein...


EDIT:

Die Javascript Console in Opera sagt dazu folgendes:


http://www.3dcenter.org/artikel/kolumne_optimierungen/index2.php
Event thread: onmouseover
Error:
name: ReferenceError
message: Statement on line 1: Reference to undefined variable: No such variable 'getElementById'
Backtrace:
In unknown script
(getElementById("pic1")).src = "/images/kolumne_optimierungen/4xr300_tn.png";
At unknown location
{event handler trampoline}

roman
2004-05-25, 23:12:20
same here, nutze opera 7.23 mit windows 2000, mouse-over funzt auch hier nicht. die javascript-console gibt dieselbe meldung aus.

Iceman346
2004-05-25, 23:13:47
Gleiches Problem mit Opera 7.5 unter Windows.

Corrail
2004-05-26, 01:09:36
Habe das gleiche Problem, Opera 7.50 W2K SP4
andere MouseOver wie z.B. bei ATI Filtertricks gehen ohne Probleme

GUNDAM
2004-05-26, 08:35:09
Bei mir ist das selbe bei Opera 7.5 auch. Da liegt wohl ein Fehler im Javascript vor.

Aqualon
2004-05-26, 08:57:16
Mozilla 1.7RC2 verarbeitet das ohne Probleme und die JavaScript Console zeigt auch keinen Fehler an. Also hat Opera wohl ein Problem mit getElementById.

Aqua

mofhou
2004-05-26, 13:29:41
Habe auch Probleme mit O 7.5, werds nachher mit ner anderen Version testen...

Corrail
2004-05-26, 13:36:00
Original geschrieben von Aqualon
Mozilla 1.7RC2 verarbeitet das ohne Probleme und die JavaScript Console zeigt auch keinen Fehler an. Also hat Opera wohl ein Problem mit getElementById.

Aqua

Es ist halt nur verwunderlich, warum es bei anderen Artikel funktioniert (siehe http://www.3dcenter.de/artikel/2003/11-21_b.php) und bei dem neuen nicht... *hm*

mofhou
2004-05-26, 14:00:55
Vielleicht liegts daran:

alt:onmouseover="MM_swapImage *usw*neuonmouseover="javascript:getElementById *usw*

Leonidas
2004-05-26, 15:24:12
Ich hab bei den letzten beiden Artikeln einen Code benutzt, welcher deutlich kleiner ist als der vorherige.

Ich schwanke nun noch, was ich tun soll. Allerdings wäre es eher besser, wenn Opera das Problem löst.

HiddenGhost
2004-05-26, 16:04:54
ich habe in deren chat zu dem problem angefragt. mir wurde gesagt, dass der code angeblich script fehler produziere, jedoch stünde dies iin den todo listen. ich warte erstmal den nächsten release ab, da dieser fehler wirklich störend ist.

http://374.forum.onetwomax.de/topic=100381447335

imagine
2004-05-26, 19:18:48
Original geschrieben von Leonidas
Ich hab bei den letzten beiden Artikeln einen Code benutzt, welcher deutlich kleiner ist als der vorherige.
Mittels CSS sollte das noch etwas kleiner und leichter wartbar sein. Außerdem funktioniert das dann nicht nur in Opera, sondern auch in allen Browsern die kein Javascript können oder bei denen es deaktiviert ist (wie zB bei meinem :)).

-> http://home.arcor.de/noxestnoster/hover.html
Die Bilder werden zusammengefügt und dann je nachdem ob der Mauszeiger grade drüberliegt oder nicht, hoch und runter geschoben. Es muss also nichts nachgeladen werden, auch ohne dass eins der Bilder vorher in ein 2x2 Pixel großes Gefängnis gesperrt wurde, wie es offenbar ein paar skrupellose Bilderfolterer praktizieren.
Einziger Nachteil: Netscape 4 blickt das ganze nicht, ich denk bzw hoffe aber das nicht wirklich noch immer jemand mit dem unterwegs ist. Falls doch: Es gibt auf jeden Fall tausend mal mehr Opera-Nutzer und Besucher die Javascript deaktiviert haben.


Etwas Offtopic: Keywords liest keine Suchmaschine mehr. Warum dem so ist kann man gut am 3DCenter Code nchvollziehen... Is nicht bös gemeint. :)
Aus Trafficgründen könntest du neben den Keywords noch die ganzen HTML 3 Formatierungen rausschmeißen. Je nachdem wieviel Traffic von Bildern stammt, ließen sich so durchaus 10-20% des Traffics einsparen ohne die Seite im Aussehen zu verändern.

HiddenGhost
2004-05-26, 19:31:49
Original geschrieben von imagine
Mittels CSS sollte das noch etwas kleiner und leichter wartbar sein. Außerdem funktioniert das dann nicht nur in Opera, sondern auch in allen Browsern die kein Javascript können oder bei denen es deaktiviert ist (wie zB bei meinem :)).

-> http://home.arcor.de/noxestnoster/hover.html
Die Bilder werden zusammengefügt und dann je nachdem ob der Mauszeiger grade drüberliegt oder nicht, hoch und runter geschoben. Es muss also nichts nachgeladen werden, auch ohne dass eins der Bilder vorher in ein 2x2 Pixel großes Gefängnis gesperrt wurde, wie es offenbar ein paar skrupellose Bilderfolterer praktizieren.
Einziger Nachteil: Netscape 4 blickt das ganze nicht, ich denk bzw hoffe aber das nicht wirklich noch immer jemand mit dem unterwegs ist. Falls doch: Es gibt auf jeden Fall tausend mal mehr Opera-Nutzer und Besucher die Javascript deaktiviert haben.


Etwas Offtopic: Keywords liest keine Suchmaschine mehr. Warum dem so ist kann man gut am 3DCenter Code nchvollziehen... Is nicht bös gemeint. :)
Aus Trafficgründen könntest du neben den Keywords noch die ganzen HTML 3 Formatierungen rausschmeißen. Je nachdem wieviel Traffic von Bildern stammt, ließen sich so durchaus 10-20% des Traffics einsparen ohne die Seite im Aussehen zu verändern.

Das funktioniert sehr gut... machen alle aktuellen Browser diesen Code ohne aus dem Tritt zu kommen (an arme IEler denk)?

Iceman346
2004-05-26, 20:02:57
Original geschrieben von HiddenGhost
Das funktioniert sehr gut... machen alle aktuellen Browser diesen Code ohne aus dem Tritt zu kommen (an arme IEler denk)?

Kein IE auf dem PC zum testen? ;)

Der IE 6.0 bei mir verarbeitet die Seite problemlos und auch der Mouseover Effekt geht. Allerdings dauert es immer einen Moment bis das zweite Bild eingeblendet wird nachdem das erste ausgeblendet wurde, also kein sofortiger Übergang wie bei Opera.

imagine
2004-05-26, 21:06:05
Original geschrieben von HiddenGhost
machen alle aktuellen Browser diesen Code ohne aus dem Tritt zu kommen (an arme IEler denk)?
Das sollte in allen IE größer gleich 5.0 funktionieren. Kann ich aber selbst nicht testen.

Original geschrieben von HiddenGhost
Der IE 6.0 bei mir verarbeitet die Seite problemlos und auch der Mouseover Effekt geht. Allerdings dauert es immer einen Moment bis das zweite Bild eingeblendet wird nachdem das erste ausgeblendet wurde, also kein sofortiger Übergang wie bei Opera.
Ich hab das gerade mit IE6 SP1/Win versucht und da gibt es keine Pausen. Auch keine nennenswerte CPU-Last, falls du das auf einem alten PC getestet hast.

Iceman346
2004-05-26, 21:14:18
Original geschrieben von imagine

Ich hab das gerade mit IE6 SP1/Win versucht und da gibt es keine Pausen. Auch keine nennenswerte CPU-Last, falls du das auf einem alten PC getestet hast.

Hab ich auf dem PC in meiner Signatur getestet, nen alten PC hab ich garnicht ;)

Der scheint bei mir das Bild immer erst zu laden wenn ich mit der Maus draufgehe, hab wahrscheinlich irgendwann mal den Cache verstellt oder so. Wat solls, den IE nutze ich sowieso nur für Omega Day.

imagine
2004-05-26, 21:35:29
Original geschrieben von Iceman346
Der scheint bei mir das Bild immer erst zu laden wenn ich mit der Maus draufgehe, hab wahrscheinlich irgendwann mal den Cache verstellt oder so. Wat solls, den IE nutze ich sowieso nur für Omega Day.
Interessiert mich trotzdem. Das das zweite Bild erst beim Drüberfahren geladen wird kann nicht sein, es gibt nämlich kein zweites Bild. Ziehst du die Maus schon über das Bild während die Seite noch am Laden ist? Evtl wurde das Bild da noch nicht fertig geladen.

MadMan2k
2004-05-29, 17:16:28
Original geschrieben von imagine
Interessiert mich trotzdem. Das das zweite Bild erst beim Drüberfahren geladen wird kann nicht sein, es gibt nämlich kein zweites Bild. Ziehst du die Maus schon über das Bild während die Seite noch am Laden ist? Evtl wurde das Bild da noch nicht fertig geladen.
wieso ordnest du die Bilder nicht nebeneinander statt untereinander an?
Es wäre für das Vergleichsbild besser, da der Monitor nunmal breiter, als höher ist und wenn man das Bild progressiv Komprimiert (JPEG, PNG kann das AFAIK auch) dürfte es keinen Unterschied bei den Ladezeiten geben.

Im übrigen finde ich die Idee an sich genial - von dir?

Iceman346
2004-05-29, 17:52:50
Original geschrieben von imagine
Interessiert mich trotzdem. Das das zweite Bild erst beim Drüberfahren geladen wird kann nicht sein, es gibt nämlich kein zweites Bild. Ziehst du die Maus schon über das Bild während die Seite noch am Laden ist? Evtl wurde das Bild da noch nicht fertig geladen.

Sorry, hab hier länger nicht mehr reingeschaut.

Ich hab grad nochmal rumprobiert und auch wenn ich die Maus definitiv aus dem Bild heraushalte ist diese "Pause" beim Bildwechsel. Zusätzlich erscheint in der Statusleiste die Meldung die normalerweise kommt wenn ein Bild geladen wird, allerdings ohne den üblichen Ladebalken.

HiddenGhost
2004-05-29, 20:11:12
Dat ist wirklich bloß EIN Bild. Sieht man, sobald man sich das Bild in ein neues Fenster kopiert(/zieht ;)).

govou
2004-05-29, 21:41:10
Original geschrieben von Leonidas
Ich hab bei den letzten beiden Artikeln einen Code benutzt, welcher deutlich kleiner ist als der vorherige.

Ich schwanke nun noch, was ich tun soll. Allerdings wäre es eher besser, wenn Opera das Problem löst.
Niemals einem Browser anpassen, immer schön an die Standards halten, wenn ein Browser das nicht kann (bzw. sich nicht an den Standard hält) selber Schuld.

imagine
2004-05-30, 11:24:23
Original geschrieben von MadMan2k
wieso ordnest du die Bilder nicht nebeneinander statt untereinander an?

Hab die mal nebeneinander gesetzt, allerdings erzeugen die beiden Bilder selbst bei 1600x1200 im Vollbild noch immer Scrollbalken.
Original geschrieben von MadMan2k
Im übrigen finde ich die Idee an sich genial - von dir?
Nein, die gibts schon seit ein paar Jahren.
Original geschrieben von Iceman346
Ich hab grad nochmal rumprobiert und auch wenn ich die Maus definitiv aus dem Bild heraushalte ist diese "Pause" beim Bildwechsel. Zusätzlich erscheint in der Statusleiste die Meldung die normalerweise kommt wenn ein Bild geladen wird, allerdings ohne den üblichen Ladebalken.
Hmm ich kann das absolut nicht nachvollziehen. Hast du evtl etwas am Cacheverhalten des IE geändert? Bei mir steht das auf "Automatisch".