Jump to content
xt:Commerce Community Forum

aktiven Link (Menüpunkt) markieren


mellory

Recommended Posts

Hallo, ich möchte gerne, dass in meiner Menüleiste immer der Link/Menüpunkt andersfarbig hervorgehoben wird, der gerade aktiv ist. Damit mein ich nicht den hover - Effekt. Der funktioniert. Ich möchte, dass der Nutzer weiß, auf welcher Seite er sich momentan befindet. Ich möchte, dem aktuellen Menüpunkt eine andere Klasse zuweisen am besten.

Momentan werden die Links mittels


{foreach name=aussen item=module_data from=$_categories}
<li class="level{$module_data.level}{if $module_data.active} active{/if}">
<a href="{$module_data.categories_link}" title="{$module_data.categories_heading_title}">{$module_data.categories_name}</a></li>
{/foreach}[/HTML]

ermittelt.

Gibt es eine Möglichkeit, noch eine if-Abfrage dareinzubringen, in der ich die aktuelle Seite abfrage?

Wie kann ich den einzelnen Seiten sonst ID's zufügen, damit ich diese über soetwas wie

if $module_data.categories_id=='1'

ansprechen kann?

Hab leider über die Suchfunktion nichts gefunden. Ein Link zu so einem Thema würde mir auch reichen ! DANKE

Link to comment
Share on other sites

Hi,erstmal Danke für deine schnelle Antwort. Aber so mein ich das gerande nicht. :P Ich will nicht, dass die Farbe bei mouseover quasi nur wechselt (hover), oder das bereits geklickte Links eine andere Farbe haben (visited) usw.

Quasi so: ich fahre mit der Maus über "Home", die Farbe wechselt zu blau (hover). Ich klicke, die Farbe bleibt während des Klickens blau (active). Und jetzt gehe ich mit der Maus woanders hin. Der Link sieht wieder aus wie jeder andere. Soll aber zb. blau bleiben.

Hoffe das war verständlich?

Mir würde es auch reichen zu wissen, wie ich jeden Menüpunkt einzeln ansprechen kann. Dann könnte ich das ganze ausbetten und mein Anliegen mit PHP oder Javascript lösen. Danke

Link to comment
Share on other sites

Hi vielen Dank (hab categorymenu in categorys umbenannt, und das bei einer stylesheet-Angabe übersehen) .

Trotzdem noch eine Frage. Es funktioniert nun bei allen Kategorien, welche ich im Backend abgelegt habe. Habe jedoch in der Navigationsleiste noch einen Punkt angelegt, der auf die Startseite verlinkt. Dieser steht auch in derselben ID drinne, wird jedoch nicht anders farbig dargestellt. Hab die Klasse level1 hochkopiert, aber das funktioniert bestimmt wegen den Variablen nicht (schreibt nur class="level" rein).

<ul id="categorys" > <!--id="categorymenu"-->

<li class="level{$module_data.level}{if $module_data.active} active{/if}">
{if $account == true} {/if}
<a href="{link page='index' conn=SSL}" title="Startseite"> Home</a>
</li>

{foreach name=aussen item=module_data from=$_categories}
<li class="level{$module_data.level}{if $module_data.active} active{/if}">
<a href="{$module_data.categories_link}" title="{$module_data.categories_heading_title}">{$module_data.categories_name}</a>
</li>
{/foreach}

</ul>[/HTML]

Vielen Dank :D

Link to comment
Share on other sites

Scheinbar wurde deine Frage bisher nicht richtig verstanden.

Deine Lösung ist nicht allgemeingültig.

Vorschlag:


{* === http://example.com/index.php *}
<li {if $smarty.get.page != 'content' and $smarty.get.page != 'customer'} class="level1 active" {/if}>

{* === http://example.com/index.php?page=content&coID=4 *}
[CODE]<li {if $smarty.get.page == 'content' and $smarty.get.coID == 4} class="level1 active" {/if}>

{* === http://example.com/index.php?page=customer&page_action=login *}
<li {if $smarty.get.page == 'customer' and $smarty.get.page_action =='login'} class="level1 active" {/if}>[/PHP]

Gruß

K. Heermann :D

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...