Aktiver Oberpunkt in Linkgruppe

AlexXx

Aktives Mitglied
15. Oktober 2012
47
1
Mahlzeit JTL'ler,

ich habe eine Linkgruppe wie folgt gegliedert:

UNTERNEHMEN
-->Geschichte
-->Standorte
SERVICE
-->Händlerliste
-->Anleitungen
KONTAKT
-->Anfahrt

Nun sieht mein Code wie folgt aus wenn ich auf Unternehmen klicke:

Code:
<ul class="categories">
                <li class="active"><a href='index.php?s=68'>Unternehmen</a>
                    <ul>
                        <li><a href='index.php?s=88'>Geschichte</a></li>
                        <li><a href='index.php?s=91'>Standorte</a></li>
                    </ul>
                </li>
                <li><a href='index.php?s=75'>Service</a>
....

Wenn ich nun auf den Unterpunkt "Geschichte" von Unternehmen klicke, kommt folgendes raus:

Code:
<ul class="categories">
                <li><a href='index.php?s=68'>Unternehmen</a>
                    <ul>
                        <li class="active"><a href='index.php?s=88'>Geschichte</a></li>
                        <li><a href='index.php?s=91'>Standorte</a></li>
                    </ul>
                </li>
                <li><a href='index.php?s=75'>Service</a>
....

Also immer der angeklickte Punkt bekommt die Klasse "active".
Nun möchte ich aber das der Oberpunkt "Unternehmen" auch die Klasse "active" behält wenn ich den Unterpunkt anklicke.

Wo muss ich da im Template was ändern um das zu realisieren? Und geht das überhaupt?
 

AlexXx

Aktives Mitglied
15. Oktober 2012
47
1
AW: Aktiver Oberpunkt in Linkgruppe

Hat den niemand eine Idee?!

Ich habe in der functions.php folgenden Code-Schnipsel gefunden:

Code:
function get_navigation($params, &$smarty)
{
   $cType = $params['type'];
   $oLink = null;
   
   if (strlen($cType) > 0)
      $oLink = $_SESSION['Linkgruppen']->{$cType};
   
   if (!is_object($oLink))
      return;

   $oLink_arr = build_navigation_subs($oLink->Links);
   $cTemplate = build_navigation_layout($oLink_arr, $params);

   return $cTemplate;
}

...also so wird wahrscheinlich die Navi generiert...aber ich bekomm es einfach nicht hin das ich den Oberpunkt sage das es die Klasse "active" hat...

Ich hoffe ihr könnt mir weiterhelfen!

Viele Grüße!
Alex
 

AlexXx

Aktives Mitglied
15. Oktober 2012
47
1
AW: Aktiver Oberpunkt in Linkgruppe

Also ich habe nun mal eine Lösung für das Problem.
Hier falls es mal jemand anderes braucht:

Ich habe das erstmal über ein JavaScript gelöst...ist zwar nicht die beste Lösung aber solange es nichts anderes gibt ist es die einfachste Lösung:
Code:
<script type="text/javascript" language="JavaScript">
$target = $('#sidebox96 ul.categories li ul li.active'); // Eine Referenz für das Element festlegen

$target.parents('li').addClass('active'); // Das nächste Eltern-Element das ein "li" sein soll suchen und die Class "active" hinzufügen
</script>

Das Script gibt dem Elternelement auch die Klasse "active".

Grüße!