Hallo,
ich versuche schon geraumer Zeit aus einem Array in dem ich eine Menü-Struktur hinterlegt habe ein Klapp-Menü zu erzeugen.
Ich habe das Array und dieses wandel ich schon in die Menüstruktur um. Das klappt soweit schon gut.
Dann habe ich ein Klappmenü, das so funktioniert, wie ich das haben will.
Das Array wird mir auch korrekt angezeigt. Siehe Screenshot als Anhang.
Mein Problem ist nun, wie ich innerhalb der Schleife die einzelnen Bestandteile so ansteuern kann, dass ich die Liste mit meinen Klassen innerhalb der Schleife habe.
Kann mir da jemand einen Denkansatz geben?
Vielen Dank
Kay
ich versuche schon geraumer Zeit aus einem Array in dem ich eine Menü-Struktur hinterlegt habe ein Klapp-Menü zu erzeugen.
Ich habe das Array und dieses wandel ich schon in die Menüstruktur um. Das klappt soweit schon gut.
Dann habe ich ein Klappmenü, das so funktioniert, wie ich das haben will.
PHP-Code:
<?php
include("connect.php"); // Verbindung zu Datenbank
include("styles/style.php"); // Verbindung zu Datenbank
include("debuglib.php"); // Einbindung Debuglib
include_once('functions.php'); // Einbindung allgemeiner Funktionen
include_once('language/localisation.php'); // Einbindung Sprachdatei
include_once('autoload.php'); // Einbindung Autoload
?>
<script>
$(document).ready(function(){
// Klapp Menue
var $klapp = $('#sitetree li.categories li');
$klapp.filter(':not(.current-cat)').children('ul').css("display","none");
$klapp.filter(':has(ul)').children(':first-child').append(' »').click(function(){
$(this).parent().siblings().children('ul:visible').slideUp('normal');
$(this).next().slideToggle('normal');
return false;
});
});
</script>
<?php
$inputArray = array(
array( 'ID' => 1, 'parentID' => 0, 'title' => 'Menue 1' ),
array( 'ID' => 2, 'parentID' => 0, 'title' => 'Menue 2' ),
array( 'ID' => 3, 'parentID' => 0, 'title' => 'Menue 3' ),
array( 'ID' => 4, 'parentID' => 0, 'title' => 'Verstecktes Menue' ),
array( 'ID' => 5, 'parentID' => 1, 'title' => 'Seite 1' ),
array( 'ID' => 6, 'parentID' => 1, 'title' => 'Seite 2' ),
array( 'ID' => 7, 'parentID' => 2, 'title' => 'Seite 3' ),
array( 'ID' => 8, 'parentID' => 3, 'title' => 'Seite 4' ),
array( 'ID' => 9, 'parentID' => 4, 'title' => 'Seite 5' ),
);
$outputArray = array();
$nodeRefs = array(0 => &$outputArray);
foreach ($inputArray as $element) {
$parent = &$nodeRefs[$element['parentID']];
$parent[$element['ID']] = array('title' => $element['title']);
$nodeRefs[$element['ID']] = &$parent[$element['ID']];
}
print print_a($outputArray, 'l:Array anzeigen;r:1;tt:1');
echo " <div id='sitetree'>"
." <ul>"
." <li class='categories'><h2>Seitenbaum</h2>"
." <ul>"
." <li class='cat-item'><a href=\"#\">Menue 1</a>"
." <ul class='children'>"
." <li class='cat-item'><a href=\"#/\">Seite 1</a></li>"
." <li class='cat-item'><a href=\"#/\">Seite 2</a></li>"
." </ul>"
." </li>"
." <li class='cat-item'><a href=\"#\">Menue 2</a>"
." <ul class='children'>"
." <li class='cat-item'><a href=\"#/\">Seite 3</a></li>"
." </ul>"
." </li>"
." <li class='cat-item'><a href=\"#\">Menue 3</a>"
." <ul class='children'>"
." <li class='cat-item'><a href=\"#/\">Seite 4</a></li>"
." </ul>"
." </li>"
." <li class='cat-item'><a href=\"#\">Verstecktes Menue</a>"
." <ul class='children'>"
." <li class='cat-item'><a href=\"#/\">Seite 5</a></li>"
." </ul>"
." </li>"
." </ul>"
." </li>"
." </ul>"
." </div>";
?>
Mein Problem ist nun, wie ich innerhalb der Schleife die einzelnen Bestandteile so ansteuern kann, dass ich die Liste mit meinen Klassen innerhalb der Schleife habe.
Kann mir da jemand einen Denkansatz geben?
Vielen Dank
Kay
Kommentar