Diskuze: Active class
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.
Ahoj,
např. tam přidej php skript, kde budeš kontrolovat hodnotu proměnné page z
query stringu...podle toho, kterému layoutu se bude rovnat, tak zvýrazníš
příslušný odkaz v navigaci jako aktivní.
Nedal jsi sem tvuj php kod. Toto je jen html kod, ktery zadne php neovlivnuje. Tudiz to nic nedela.
V php by to slo resit cyklem. Nebo prepisovanim templatu.
V js/jquery totez.
Odkaz je zasilani udaju na server metodou "get". V php to funguje takto
--- soubor.php ---
<?php
$value = isset($_GET['page']) ? $_GET['page'] : ''; // precteni hodnotu z get
echo $value; // vypsani hodnoty
if ($value=='obsah') // porovnani hodnoty a vypsani odkazu
{echo '<a href="blabla" class="active">odkaz</a>';}
else
{echo '<a href="blabla">odkaz</a>';}
?>
Nebo tam muzes dat v php regularni vyraz, str_replace, strtr a nebo neco jineho.
$tpl = '
<li><a id="portfolio" href="administrace.php?page=portfolioUpload">Portfolio</a></li>
<li><a id="obsah" href="administrace.php?page=obsah">Obsah</a></li>
';
$cnt = strtr($tpl, array('?page='.$value.'"' => '?page='.$value.'" class="active"'));
echo $cnt;
// nahrad ::: administrace.php?page=obsah" ::: za ::: administrace.php?page=obsah" class="active" :::
// cili prida class="active", pokud je v $value text 'obsah'
Děkuji všem za rady. Mrknul jsem se na to a nakonec jsem z toho sestavil následující kód.
function activeLink() {
$value = isset($_GET['page']) ? $_GET['page'] : "";
switch ($value) {
case '':
echo '<li><a href="administrace.php?page=portfolioUpload">Portfolio</a></li>';
echo '<li><a href="administrace.php?page=obsah">Obsah</a></li>';
break;
case 'portfolioUpload':
echo '<li><a style="color: #badc58;" href="administrace.php?page=portfolioUpload">Portfolio</a></li>';
echo '<li><a href="administrace.php?page=obsah">Obsah</a></li>';
break;
case 'obsah':
echo '<li><a href="administrace.php?page=portfolioUpload">Portfolio</a></li>';
echo '<li><a style="color: #badc58;" href="administrace.php?page=obsah">Obsah</a></li>';
break;
}
}
Zobrazeno 4 zpráv z 4.