cenarius_88
22-02-2012, 17:01
E rieccomi...
Ho creato un sito semplice, con un menų laterale... banale...
La struttura per ogni pagina č la seguente
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it">
<head>
<title>Pagina</title>
<link href="css/Menu.css" rel="stylesheet" type="text/css" />
<link href="css/StyleSheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<!--#include file="header.htm"-->
<!--#include file="menu.htm"-->
<div id="pages">
<!--#include file="Pagina.htm"-->
</div>
<!--#include file="footer.htm"-->
</div>
</body>
e il menu.htm č cosė
<div id="menu">
<ul id="listmenu" class="menu">
<li><a id="home" href="home.shtml"><span>Home</span></a></li>
<li><a id="staff" href="staff.shtml"><span>Staff</span></a></li>
<li><a id="gallery" href="gallery.shtml"><span>Galleria</span></a></li>
<li><a "contacts" href="contacts.shtml"><span>Contatti</span></a></li>
<li><a "links" href="links.shtml"><span>Links Utili</span></a></li>
</ul>
</div>
Cosė facendo tutto funziona... quello che volevo implementare io č una cosa del genere:
Quando accedo alla pagina, nella sezione menų, la pagina selezionata deve essere appariscente...
nel CSS del menų ho creato una classe "active", mettendola manualmente su una voce file menu.htm, quando accedo alle pagine la voce č appariscente...
Vorrei che questa selezione fosse "dinamica"... cioč se clicco un un link dal menų, va alla pagina selezionata, e in base alla pagina in cui si ritrova un determinato elemento della lista dei menų deve cambiare.
Facendo alcune prove... in java script
<script type="text/javascript">
// Il tuo codice va qui
$(document).ready(function() {
// salvo il link pagina attuale
pagina=location.href;
//splitto secondo il carattere "/"
pagina=location.href.split("/");
//siccome l'indirizzo č del tipo http://path/nomefile.shtml, prendo il quarto campo [3], che č nomefile.html, splitto secondo il carattere "." e prendo solo il primo campo [0]
pagina=(pagina[3].split("."))[0];
// per vedere se funziona visualizzo un popup col nomepagina
alert(pagina);
//cerco l'elemento con l'id = pagina e gli assegno la classe active
document.getElementById(pagina).className="active";
});
</script>
Tuttavia inserendo lo script nella pagina home.shtml
non visualizzo il popup... e non visualizzo i cambiamenti...
sto testando in un file separato... il popup c'č, corretto... i avvengono correttamente....
Sul file principale... nulla .-.
Che fare?
[EDIT] Risolto, avevo dimenticato d'includere il jquery... ho messo lo script in un file separato... ho linkato lo stesso come javascript sull'header di ogni pagina, e tutto funziona...
Ho creato un sito semplice, con un menų laterale... banale...
La struttura per ogni pagina č la seguente
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it">
<head>
<title>Pagina</title>
<link href="css/Menu.css" rel="stylesheet" type="text/css" />
<link href="css/StyleSheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<!--#include file="header.htm"-->
<!--#include file="menu.htm"-->
<div id="pages">
<!--#include file="Pagina.htm"-->
</div>
<!--#include file="footer.htm"-->
</div>
</body>
e il menu.htm č cosė
<div id="menu">
<ul id="listmenu" class="menu">
<li><a id="home" href="home.shtml"><span>Home</span></a></li>
<li><a id="staff" href="staff.shtml"><span>Staff</span></a></li>
<li><a id="gallery" href="gallery.shtml"><span>Galleria</span></a></li>
<li><a "contacts" href="contacts.shtml"><span>Contatti</span></a></li>
<li><a "links" href="links.shtml"><span>Links Utili</span></a></li>
</ul>
</div>
Cosė facendo tutto funziona... quello che volevo implementare io č una cosa del genere:
Quando accedo alla pagina, nella sezione menų, la pagina selezionata deve essere appariscente...
nel CSS del menų ho creato una classe "active", mettendola manualmente su una voce file menu.htm, quando accedo alle pagine la voce č appariscente...
Vorrei che questa selezione fosse "dinamica"... cioč se clicco un un link dal menų, va alla pagina selezionata, e in base alla pagina in cui si ritrova un determinato elemento della lista dei menų deve cambiare.
Facendo alcune prove... in java script
<script type="text/javascript">
// Il tuo codice va qui
$(document).ready(function() {
// salvo il link pagina attuale
pagina=location.href;
//splitto secondo il carattere "/"
pagina=location.href.split("/");
//siccome l'indirizzo č del tipo http://path/nomefile.shtml, prendo il quarto campo [3], che č nomefile.html, splitto secondo il carattere "." e prendo solo il primo campo [0]
pagina=(pagina[3].split("."))[0];
// per vedere se funziona visualizzo un popup col nomepagina
alert(pagina);
//cerco l'elemento con l'id = pagina e gli assegno la classe active
document.getElementById(pagina).className="active";
});
</script>
Tuttavia inserendo lo script nella pagina home.shtml
non visualizzo il popup... e non visualizzo i cambiamenti...
sto testando in un file separato... il popup c'č, corretto... i avvengono correttamente....
Sul file principale... nulla .-.
Che fare?
[EDIT] Risolto, avevo dimenticato d'includere il jquery... ho messo lo script in un file separato... ho linkato lo stesso come javascript sull'header di ogni pagina, e tutto funziona...