---
title: "Unterschiedliche wraps anhand des parent Status?"
url: "https://www.typo3.net/d/115804-unterschiedliche-wraps-anhand-des-parent-status"
source: "typo3.net"
tags: ["TYPO3","Menüs","Frage","JavaScript & AJAX","TYPO3 4"]
created: "2013-08-22"
last_reply: "2013-08-22"
replies: 1
solved: true
page: 1
pages: 1
lang: "de"
---

# Unterschiedliche wraps anhand des parent Status?

TYPO3 › Menüs · 1 Antwort · gelöst · gestartet 2013-08-22

## Frage

**djo193** · 2013-08-22 · [Beitrag #1](https://www.typo3.net/d/115804-unterschiedliche-wraps-anhand-des-parent-status/1)

Hallo Leute,

ich seit eineinhalb Tagen auf der Suche nach einer Lösung für mein Problem, aber ich stehe völlig auf dem Schlauch. Ich habe ein Menü angelegt, dessen zweite Ebene beim hover ausklappt. Das funktioniert soweit auch alles super. Allerdings möchte ich gerne, dass der parent Menüpunkt meine hover-Klasse (linkItemActive) behält, wenn ich mit der Maus durch das Dropdown-Menü wandere. Hierfür habe ich mir eine kleine JS-Funktion geschrieben, welche mir die Klasse des parent Menüpunktes ändert, sobald ich mit der Maus in das Dropdown gehe und sie wieder zurückändert (linkItem), wenn ich das Menü verlasse. Soweit kein Problem. Allerdings habe ich nun das Problem, dass wenn ich das Dropdown des aktiven parent Menüpunktes, welcher bereits sowieso die Klasse "linkItemActive" hat (und diese auch behalten soll), verlasse, meine JS-Funktion mir die Klasse ebenfalls auf "link-item" ändert.

Mein Ansatz, um das Problem zu lösen, war es je nach Status (NO, ACT, CUR...) des parent Menüpunktes, das onmouseover/onmouseout gar nicht erst mit in meinen <ul>-Tag zu schreiben. Gibt es irgendeine Möglichkeit auf den aktuellen Status des parents zuzugreifen und in Abhängigkeit dessen dann den wrap zu definieren?

Hier der TS-Schnipsel der 2. Menüebene:

```typoscript
  # zweites Level
  2 = TMENU
  2 {
    stdWrap.dataWrap = <ul onmouseover="changeClass('mainmenu_{field : pid}', 'linkItemActive');" onmouseout="changeClass('mainmenu_{field : pid}', 'linkItem');">|</ul>
    NO.allWrap = <li>|</li>
    NO.ATagParams = class="dropdown"
  }
```

Ich hoffe es ist einigermaßen klar geworden, wo mein Problem ist :D

## Beste Antwort

**djo193** · 2013-08-22 · [Beitrag #2](https://www.typo3.net/d/115804-unterschiedliche-wraps-anhand-des-parent-status/2)

Ok, kaum stelle ich hier die Frage, schon finde ich selbst die Lösung :) Habe es jetzt etwas anders gelöst. Und zwar übergebe ich der JS-Funktion mittels {leveluid : 1} die ID des aktiven parent Menüpunktes und führe den Code nur aus, wenn dieser nicht mit der aktuellen ID übereinstimmt.

```typoscript
stdWrap.dataWrap = <ul onmouseover="changeClass('mainmenu_{field : pid}', 'linkItemActive', 'mainmenu_{leveluid : 1}');" onmouseout="changeClass('mainmenu_{field : pid}', 'linkItem', 'mainmenu_{leveluid : 1}');">|</ul>

NO.allWrap = <li>|</li>
NO.ATagParams = class="dropdown"
```

```javascript
function changeClass(id, newClass, parentId)
{
    if (id != parentId)
    {
        document.getElementById(id).className = newClass;
    }
}
```

## Antworten

### [#2](https://www.typo3.net/d/115804-unterschiedliche-wraps-anhand-des-parent-status/2) · djo193 · 2013-08-22 · Beste Antwort

(Text siehe oben unter „Beste Antwort“.)

---

Quelle: „Unterschiedliche wraps anhand des parent Status?“, typo3.net, https://www.typo3.net/d/115804-unterschiedliche-wraps-anhand-des-parent-status
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
