---
title: "GMENU Rollover: Strict / Transitional im IE"
url: "https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie"
source: "typo3.net"
tags: ["Frontend","Barrierefreiheit","Frage","HTML & CSS"]
created: "2006-06-30"
last_reply: "2006-12-08"
replies: 4
solved: false
page: 1
pages: 1
lang: "de"
---

# GMENU Rollover: Strict / Transitional im IE

Frontend › Barrierefreiheit · 4 Antworten · gestartet 2006-06-30

## Eröffnungsbeitrag

**thmsgr** · 2006-06-30 · [Beitrag #1](https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie/1)

Hallo zusammen,

meine Seite ist in XHTML 1.0 Strict aufgebaut.
Ich verwende ein einfaches GMENU:

```typoscript
navigation.primary = HMENU
navigation.primary {
	special = directory
	special.value = {$folder_primary}
	entryLevel = 1
	1 = GMENU
	1.NO {
		XY = [20.w]+28,25
		transparentBackground = 1
		20 = TEXT
		20 {
			text.field = title
			offset = 13,19
			fontColor = #777777
			fontSize = 20
			fontFile = {$font_b}
		}
	}
	1.RO < .1.NO
	1.RO = 1
	1.RO {
		20.fontColor = {$farbe_gruen}
	}
	1.ACT < .1.NO
	1.ACT = 1
	1.ACT {
		20.fontColor = {$farbe_rot}
		20.fontSize = 24
		20.offset = 16,19
	}
}
```

Im Internet Explorer wird alles korrekt angezeigt, nur die Rollovers funktionieren dort nicht. In FF & Opera geht alles einwandfrei. Wenn ich den Doctype von "Strict" auf "Transitional" umschalte, funktionieren die Rollovers auch im IE.

Ich vermute das Problem beim over/out JavaScript von Typo3, kann aber nichts finden. Hat sich schonmal jemand damit befasst / ein Ähnliches Problem gehabt?
Wie löst man das?

grüße
thmsgr

## Antworten

### [#2](https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie/2) · LineMan · 2006-06-30

wieso dann unbedingt strict verwenden, wenns mit transitional doch geht? dort darfst du dann z.B. auch keine target-attribute in links verwenden. transitional ist doch vollkommen ausreichend... und ausserdem warum postest du das hier im barrierefrei forum... ein gmenu ist nunmal nicht wirklich barrierefrei. dann müsstest du schon ein listenmenü benutzen (tmenu)

bei dem eigentlichen problem kann ich dir leider nicht helfen, da ich gmenüs nie verwende.

### [#3](https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie/3) · thmsgr · 2006-06-30

> **LineMan schrieb:**
>
> wieso dann unbedingt strict verwenden, wenns mit transitional doch geht?

Die Vorgabe ist: Erstelle die Seite in Strict. Ende.

> **LineMan schrieb:**
>
> und ausserdem warum postest du das hier im barrierefrei forum... ein gmenu ist nunmal nicht wirklich barrierefrei.

...

Tja, ich bin wohl im falschen Forum. Tut mir leid.

> **LineMan schrieb:**
>
> bei dem eigentlichen problem kann ich dir leider nicht helfen

Das hab ich schon gemerkt.

Trotzdem vielen Dank...

grüße
thmsgr

### [#4](https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie/4) · thmsgr · 2006-06-30

Hallo nochmal,

(vielleicht kann man den Beitrag ja in ein passendes Forum verschieben?)

zu meinem Problem:
Ich habe nun herausgefunden, dass das JavaScript von Typo3 im IE beim Doctype "Strict" einen anderen Wert als erwartet bekommt und deshalb nicht funktioniert.

Konkret sieht das so aus:

```javascript
function over(name,imgObj)	{	//
  if (version == "n3" && document[name]) {
    document[name].src = eval(name+"_h.src");
  }
  else if (typeof(document.getElementById)=="function" && document.getElementById(name)) {
    document.getElementById(name).src = eval(name+"_h.src");
  }
...
}
```

Das Problem ist nun, dass die Abfrage nach typeof(document.getElementById)=="function" beim IE den Wert "object" zurückliefert. Somit wird der Rollover nicht ausgeführt.

Abhilfe könnte z. B. dadurch geschafft werden, indem man nur schreibt:

```javascript
else if (document.getElementById && document.getElementById(name)) {
```

Die Frage ist nur, wo / wie kann man das JavaScript entsprechend abändern?

Hat jemand eine Idee?

grüße
thmsgr

### [#5](https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie/5) · Flipmoe5 · 2006-12-08

Hallo,
etwas spät, aber eventuell hilft es dem einen oder anderen noch weiter.

Es handelt sich um folgende Datei:
/typo3/sysext/cms/tslib/class.tslib_fe.php

Zeile 3736 bis 3747:

```javascript
'		// JS function for mouse-over
	function over(name,imgObj)	{	//
		if (version == "n3" && document[name]) {document[name].src = eval(name+"_h.src");}
		else if (typeof(document.getElementById)=="function" && document.getElementById(name)) {document.getElementById(name).src = eval(name+"_h.src");}
		else if (imgObj)	{imgObj.src = eval(name+"_h.src");}
	}
		// JS function for mouse-out
	function out(name,imgObj)	{	//
		if (version == "n3" && document[name]) {document[name].src = eval(name+"_n.src");}
		else if (typeof(document.getElementById)=="function" && document.getElementById(name)) {document.getElementById(name).src = eval(name+"_n.src");}
		else if (imgObj)	{imgObj.src = eval(name+"_n.src");}
	}';
```

---

Quelle: „GMENU Rollover: Strict / Transitional im IE“, typo3.net, https://www.typo3.net/d/45639-gmenu-rollover-strict-transitional-im-ie
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
