Guten Abend,
erst mal Entschuldigung für den nicht gerade aussagekräftigen Titel, habe leider nichts kurzes für meine beiden Problemchen gefunden.
Zum Problem:
Ich habe mir mit JavaScript eine Funktion zum Anzeigen von Bildern in einem Popup geschrieben.
Zur Funktion:
- Sie hat die Parameter bild,w,h (Bilddatei, Breite des Bilds, Höhe des Bilds)
- Bei ihrem Aufruf prüft die Funktion, ob das Objekt „fenster“ bereits existiert (=bereits ein Bild angezeigt wird/ein Fenster geöffnet ist).
a)Ist dies der Fall, wird das Fenster geschlossen und anschließend ein neues mit dem als Parameter übergebenen Inhalt geöffnet. Der Inhalt wird dynamisch erzeugt.
(das Fenster wird erst geschlossen, um unnötig viele Fenster beim Anwender zu vermeiden und vor allem das Bild/Fenster gleich in den Vordergrund zu bekommen, wer kennt nicht das Problem – man klickt etwas an, hat bereits ein JavaScript Fenster offen und sucht dann erst mal!)
b)Ist dies nicht der Fall, wird natürlich erst recht ein Fenster mit Inhalt geöffnet
Also eigentlich ne ganz simple Sache, den (kommentierten) Code findet ihr unter
http://user4893.piranho.com/selfhtml/sample.txt
Ein Beispiel unter
http://user4893.piranho.com/selfhtml/
Folgende Probleme treten auf:
-
Aktualisiert man das per JavaScript geöffnete Fenster mit dynamischen Inhalt, ändert sich der Inhalt bzw. das Bild wird plötzlich nicht mehr angezeigt. Dies ist beim Firefox als auch bei Opera der Fall, nicht aber beim IE – warum auch immer.
Der Firefox spuckt in der Error Console folgende Meldung aus:
Security Error: Content at wyciwyg://0/file:///C:/sample/index.htm may not load or link to file:///C:/sample/index.htm.
Wirklich weiter hilft mir das aber nicht ): -
Nur Opera:
Klickt den Link einmal an, schließt dann das Fenster. Klickt den Link nun noch einmal an – im Opera funktioniert die Funktion nun plötzlich nicht mehr, es wird kein weiteres Popup mehr geöffnet. Auch hier weiß ich nicht wirklich woran dies liegen könnte, ein Fehlerlog konnte ich im Opera nicht finden?
Vielen Dank schonmal für eure Hilfe :-)