Zum Inhalt springen

Menü mit Mouseover Beschreibung

Erstellt am 5. März 2009 · 4 Antworten · letzte Antwort am 17. April 2009

Tags: JavaScript & AJAX, Frage

einert ·

Ich würde gerne ein normales Menü auf der linken Seite erstellen. Zu jedem Menüpunkt möchte ich bei MouseOver in einem Layer einen Hinweistext anzeigen lassen, den ich zur entsprechenden Seite unter Metadaten-Beschreibung oder Metadaten-Inhaltsangebe erfasst habe. Wenn in dem entsprechenden Feld kein Text steht, soll natürlich auch kein Hinweistext erscheinen.
Also: Wie bekomme ich entsprechenden Text auf einen Layer zum jeweiligen Menüpunkt?
Im Moment habe ich noch keine Idee, wie ich das realisieren kann.
Kann mir jemand helfen?

Patrick S.​ ·

Ich stelle mir vor, dass du ein normales MouseOver Menu oeffnest, das den Inhalt aus dem Untertitel der Seite anzeigt. Du kannst ja im Backend fuer jede Seite neben dem Seitentitel einen Untertitel angeben.

Das ganze dann mit

field = subtitle
einert ·

Danke für den Hinweis.
Aber irgendwie stehe ich auf dem Schlauch.
Ich verstehe noch nicht wie du das meinst...
Kannst du mir mit etwas mehr Code auf die Sprünge helfen?

Patrick S.​ ·

Ich weiss ja gar nicht, wie weit du bist. Hast du schon irgendwas? Ein Menu?
Bist du mindestens in der Lage, ein MouseOver Menu zu erstellen? Wenn nicht, dann gibts dazu einiges in der Suche. Wenn du dann ein funktionierendes MouseOver Menu hast, dann ersetzt du "field = title" durch "field = subtitle".

Es ist schwierig nachzuvollziehen, mit welchen Voraussetzungen man rechnen kann, wenn nichts weiter dabei steht. 😉

einert ·

Nachdem ich das Thema etwas schleifen gelassen hatte hier nun mein bisheriger Code und der Ansatz an dem ich arbeite:

# Subnavigation
lib.navsub = HMENU
lib.navsub {
  entryLevel = 1
  1 = TMENU
  1 {
    wrap = <ul class="e1">|</ul>
    NO {
      wrapItemAndSub = <li>|</li>
      //ATagParams = 
      //after = <div><p>Text</p></div>
    }
    ACT = 1
    ACT {
      wrapItemAndSub = <li>|</li>
      ATagParams = class="hier"
    }
  }
  2 < .1
  2 {
    wrap = <ul class="e2">|</ul>
  }	
  3 < .1
  3 {
    wrap = <ul class="e3">|</ul>
  }	
}

Die entscheidende Stelle ist die auskommentierte im Code (Zeile 10,11).
Hier möchte ich den Text möglichst als HTML darstellen, der in dem Seiteneigenschaften Feld Abstract steht. Alternativ könnte man auch ein neues Feld in den Seiteneigenschaften einfügen, in dem der Text eingetragen werden kann.
Der Inhalt des Feldes soll dann - wenn vorhanden - beim Mousever über dem entsprechenden Seitenlink in dem Menü erscheinen. Den Text möchte ich so Formatieren, dass es als DIV Kontainer neben dem Navigationspunkt über dem Seiteninhalt "schwebt".

Ich hoffe, ich habe das Problem einigermaßen verständlich beschrieben.