Hallo,
ich habe folgendes Script im Einsatz, welches einwandfrei im Firefox, Safari (und ich vermute auch Opera) funktioniert. Im IE7 bemerkte ich jedoch gerade, dass Fehler ausgeworfen werden, die ich mir nicht erklären kann. Ich denke die Verwendung des Scripts (Bildergalerie) ist selbsterklärend. Was mag der IE daran nicht?
Der Fehler zeigt sich wie folgt: Weder auf Aufruf (showStimme(id)) noch per resetStimme() wird irgendeine Aktion ausgelöst. Wie es scheint, mag der IE also this.document.getElementById(..) nicht?
Alles anzeigen
ich habe folgendes Script im Einsatz, welches einwandfrei im Firefox, Safari (und ich vermute auch Opera) funktioniert. Im IE7 bemerkte ich jedoch gerade, dass Fehler ausgeworfen werden, die ich mir nicht erklären kann. Ich denke die Verwendung des Scripts (Bildergalerie) ist selbsterklärend. Was mag der IE daran nicht?
Der Fehler zeigt sich wie folgt: Weder auf Aufruf (showStimme(id)) noch per resetStimme() wird irgendeine Aktion ausgelöst. Wie es scheint, mag der IE also this.document.getElementById(..) nicht?
Quellcode
- <script language="JavaScript" type="text/javascript">
- //<![CDATA[
- function showStimme(id)
- {
- // Alle Stimmen definieren
- stimmen = new Array("a", "b", "c");
- // Alle Bilder der Stimmen ausgrauen
- for (var i = 0; i < stimmen.length; ++i)
- {
- if(this.document.getElementById(stimmen[i]))
- {
- this.document.getElementById(stimmen[i]).style.opacity = '0.5';
- }
- }
- // Das ausgewählte Bild hervorheben
- this.document.getElementById(id).style.opacity = '1';
- // Alle Texte verstecken
- for (var i = 0; i < stimmen.length; ++i)
- {
- if(this.document.getElementById('text-'+stimmen[i]))
- {
- this.document.getElementById('text-'+stimmen[i]).style.display = 'none';
- }
- }
- // Den ausgewählten Text hervorheben
- this.document.getElementById('text-'+id).style.display = 'table';
- // Nichts weiter tun
- return false;
- }
- function resetStimmen()
- {
- stimmen = new Array("a", "b", "c");
- // Eine zufällige Stimme auswählen und aktivieren
- stimme = Math.floor(Math.random() * stimmen.length);
- if(this.document.getElementById(stimmen[stimme]))
- {
- this.document.getElementById('text-'+stimmen[stimme]).style.display = 'table';
- this.document.getElementById(stimmen[stimme]).style.opacity = '1';
- }
- return false;
- }
- //]]>
- </script>