Gå til innhold

Hvordan gjøre en menytab aktiv, ved hjelp av url, og php?


Anbefalte innlegg

Hei, prøver å få til et script.

 

 

Det er slik at vis det står "?side=test" i URL'EN. Skal en viss menytab - være aktiv.

 

Skjønte dere?

 

 

Her er koden:

<?php if($_GET['$handlername = "test"']){
echo '<div class="radmenu staticmenu"><ul class="rootGroup horizontal">
<li>
	<a class="link" href="/"><span class="text">Forsiden</span></a>

 </li>
 <li class="aktiv">
	<a class="link" href="?side=test"><span class="text">Templates</span></a>
 </li>
 <li class="item ">
	<a class="link" href="/"><span class="text">Submit Template</span></a>
 </li>
</ul>
<div class="horzchildgroup">	   <ul class="group level1 horizontal">
	</ul> </div> 
 </div>';
}
 ?>

Endret av php_user
Lenke til kommentar
Videoannonse
Annonse

Ha en egen klasse for aktive menyer - resten er vel rimelig straight forward? Noe slikt funker jo (hvor den aktive classen heter "Active");

 

<a href="bilder/" class="<?php print ($menuItem == 'bilder' ? 'active' : ''); ?>">Bilder</a>

 

Eller, forutsatt at GET-forespørselen er lik som den aktive menyklassen (eller, som i dette eksempelet, "active_<meny>". Merk at denne metoden er litt mer tungvint, og er bedre egnet om om du er nødt å ha en unik aktiv-klasse for hvert menyelement.

 

<a href="bilder/" class="<?php echo 'active_'.$menuItem; ?>">Bilder</a>

Endret av loathsome
Lenke til kommentar

Ja. Dette er koden: ;) Men funker ikke:

 

			<div class="radmenu staticmenu"><ul class="rootGroup horizontal">
<li>
	<a class="link" href="/"><span class="text">Forsiden</span></a>

 </li>
 <li class="<?php print ($menuItem == '?side=test' ? 'aktiv' : ''); ?>">
	<a class="" href="?side=test"><span class="text">PHP Scipts</span></a>
 </li>
 <li class="item">
	<a class="link" href="?side=test"><span class="text">Templates</span></a>
 </li>
 <li class="item ">
	<a class="link" href="/"><span class="text">Submit Template</span></a>
 </li>
</ul>
<div class="horzchildgroup">	   <ul class="group level1 horizontal">
	</ul> </div> 
 </div>

Lenke til kommentar

Men i alle dager, du må jo definere $menuItem et sted, da!

 

Og dessuten er det veldig unødvendig å poste all den koden, vennligst bare post relevante linjer slik at det blir letter å hjelpe/analysere koden din :)

Endret av loathsome
Lenke til kommentar

Enkleste måten som jeg ser det er å gjøre slik:

<?php
$current = $_GET['current'];
print <<<HTML
<html>
<head>
	<style type="text/css">
		body{padding: 30px; 0;}
		ul{	margin:0; 	padding:0; list-style-type:none }
		a{ color:white; font-family: Verdana, tahoma, sans-serif;}
		ul li{ display:inline; margin-right:1px;  background-color: green; padding:1em; }
		.articles li#articles, .faq li#faq , .about li#about  {	background-color:white; border:1px solid #1c1705; border-bottom:none;}
		.articles li#articles a, .faq li#faq a, .about li#about a{color: #1c1705; }
	</style>
	<title>$current</title>
</head>
<body class="$current">
	<ul>
		<li id="articles"><a href="?current=articles">Artikler</a></li>
		<li id="faq"><a href="?current=faq">FAQ</a></li>
		<li id="about"><a href="?current=about">Om oss</a></li>
	</ul>
</body>
</html>
HTML;
?>

 

 

Gi body et class-attributt og listeelementet ditt et id-attributt og lager css-regler i henhold til det. Hvordan det funker kan du se her: http://nibbler.no/files/current.php

Endret av CruellaDeVille
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...