---
title: "GMENU_LAYERS + strict doctype = JS-Fehler im IE beim Laden"
url: "https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden"
source: "typo3.net"
tags: ["TYPO3","Menüs","Frage","HTML & CSS"]
created: "2008-09-04"
last_reply: "2008-09-22"
replies: 5
solved: false
page: 1
pages: 1
lang: "de"
---

# GMENU_LAYERS + strict doctype = JS-Fehler im IE beim Laden

TYPO3 › Menüs · 5 Antworten · gestartet 2008-09-04

## Eröffnungsbeitrag

**snorri** · 2008-09-04 · [Beitrag #1](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/1)

Hi alle,

ich habe eine Seite mit TYPO3 4.2.1 umgesetzt, in der ich aufklappende Menüs verwende, also ein GMENU_LAYERS mit zwei Unterebenen aus GMENUs. Das funktioniert soweit auch wunderbar, aber mit einem großen Haken.

Wenn ich eine Seite im IE lade (alle anderen Browser sind unproblematisch) und, während der Browser noch lädt, die Maus irgendwo in den Anzeigebereich des Browsers bewege, erhalte ich zwei JavaScript-Fehlermeldungen der Art: Zeile X Zeichen Y Objekt erwartet. Wie üblich, wenn der IE JS-Fehler meldet, ist damit wenig anzufangen, in den betreffenden Zeilen im Quelltext steht kein Script.

Auf der Fehlersuche habe ich im Template nach und nach alle möglichen Teile auskommentiert, bis der Fehler verschwindet. Dabei habe ich herausgefunden, dass er offenbar mit dem Doctype verbunden ist. Wenn ich diese Zeile herausnehme ...

```typoscript
page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
```

... dann fügt TYPO3 den Doctype Transitional ein und der Fehler ist weg (dafür ist natürlich das Design geschrottet). Ebenso verschwindet der Fehler natürlich, wenn ich das GMENU_LAYERS auskommentiere. Anscheinend sind es also diese beiden Elemente, die sich nicht vertragen.

Kennt jemand dieses Verhalten? Was könnte ich tun, um das abzustellen?

Danke!

-- snorri

## Antworten

### [#2](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/2) · snorri · 2008-09-12

Ich habe leider noch keine Lösung für das Problem gefunden. Hat wirklich niemand eine Idee, was ich falsch machen könnte?

-- snorri

### [#3](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/3) · just2b · 2008-09-12

ich würde das design schon auf xhtml trans umstellen, das ist das sinnvollste und auch der normale weg heutzutage

georg

### [#4](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/4) · snorri · 2008-09-22

Hallo alle,

ich bin jetzt am Ende meines Lateins angekommen. Ich verwende:
- TYPO3 4.2.1
- GMENU_LAYERS mit zwei Unterebenen (GMENU)
- Internet Explorer 6 und 7

Ausprobiert habe ich jetzt wirklich jeden erdenklichen Doctype:

```typoscript
page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
page.config.doctype = <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
page.config.doctype = <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
page.config.doctype = <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
page.config.doctype = <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Strict//EN">
```

Ich erhalte **unter allen Umständen** diese JavaScript-Fehlermeldung. Der **einzige** Doctype, der den Fehler verschwinden lässt, ist:

```typoscript
page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
```

Unter dem lässt sich aber das vorgegebene Webdesign nicht zähmen, der IE bringt die ganze Positionierung und Größenangaben durcheinander.

Ich bekomme einfach keine Konstellation hin, bei der das Design so aussieht wie es soll, ohne dass dieser elende Fehler auftritt. Muss ich jetzt damit leben?

-- snorri

### [#5](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/5) · snorri · 2008-09-22

Nachtrag: Verursacher ist eindeutig das GMENU_LAYERS. Ich habe die beiden GMENUs auskommentiert, ebenso den gesamten Inhalt des Layermenüs, bis nur noch dieser Rumpf übrig war:

```typoscript
includeLibs.gmenu_layers = media/scripts/gmenu_layers.php
page.10.subparts.NAVI1 = HMENU
page.10.subparts.NAVI1.entryLevel = 0
page.10.subparts.NAVI1.1 = GMENU_LAYERS
page.10.subparts.NAVI1.1 {
	NO {
	}
}
```

Selbst unter diesen minimalen Umständen (das HTML-Template enthält auch nur noch den Marker für NAVI2) tritt der Fehler absolut reproduzierbar auf, wenn sich beim Laden der Seite die Maus im Anzeigebereich des Browserfensters bewegt.

Bitte, wenn irgendjemandem etwas einfällt: Ich bin inzwischen verzweifelt! o.O

-- snorri

### [#6](https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden/6) · snorri · 2008-09-22

Noch ein Nachtrag: Ich habe mir jetzt ein "jungfräuliches" TYPO3 4.2.1 als Testumgebung eingerichtet und dort ein minimalistisches HTML-Template angelegt:

```html
<!-- ###DOCUMENT_BODY### start -->
<!-- ###NAVI1### start -->
xxx
<!-- ###NAVI1### stop -->
<!-- ###DOCUMENT_BODY### stop -->
```

Dazu das die ebenso rudimentäre TypoScript-Konfiguration ("Konstanten" und die anderen Felder sind leer):

```typoscript
page = PAGE
page.typeNum = 0

page.config.doctype = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/transitional.dtd">

page.10 = TEMPLATE
page.10 {
	template = FILE
	template.file = fileadmin/imining/template/seite.tmpl
	workOnSubpart = DOCUMENT_BODY
}

includeLibs.gmenu_layers = media/scripts/gmenu_layers.php
page.10.subparts.NAVI1 = HMENU
page.10.subparts.NAVI1.entryLevel = 0
page.10.subparts.NAVI1.1 = GMENU_LAYERS
page.10.subparts.NAVI1.1 {
	NO {
		backColor = #cccccc
		XY = 102, 22
		10 = TEXT
		10 {
			text.field = nav_title // title
			offset = 0, 17
		}
	}
}
```

Das Menü erscheint und funktioniert, zeigt aber bei jedem Laden im IE (6 und 7) die erwähnten zwei JS-Fehler: 3mal "Zeile 4 Zeichen 35: Objekt erwartet". (Bei anderen Konfigurationen hatte ich auch mal zusätzlich eine gleichlautende Meldung über Zeile 176, irgendwann auch mal etwas in der Richtung von "'version' ist nicht definiert.)

Vor ein paar Monaten erst habe ich einen Auftritt mit TYPO3 4.1.5 umgesetzt, der ebenfalls GMENU_LAYERS verwendet -- ohne jedes Problem. Damit steht für mich fest, dass es sich um einen Bug in TYPO3 4.2.1 handelt. Ich gebe hiermit auf und hoffe darauf, dass er in der nächsten Version behoben wird.

Macht es Sinn, diesen Fehler irgendwohin zu melden? Eigentlich gehe ich davon aus, dass er bereits bekannt sein müsste ...

-- snorri

---

Quelle: „GMENU_LAYERS + strict doctype = JS-Fehler im IE beim Laden“, typo3.net, https://www.typo3.net/d/81405-gmenu-layers-strict-doctype-js-fehler-im-ie-beim-laden
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
