Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/08/2009, 01:20
Avatar de ceSharp
ceSharp
 
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años, 3 meses
Puntos: 66
Respuesta: identificar menu activo

vamos a ver,
previamente le damos un identificador a cada elemento de tu lista y el link que apunta a la página de contacto lo pasamos con el parámetro 'marcado' con el valor 'contacto':
<ul>
<li><a class="current" href="http://www.prograficion.net/">Homepage</a></li>
<li id="li_cursos"><a href="#">Cursos</a></li>
<li id="li_utilidades"><a href="#">Utilidades</a></li>
<li id="li_about"><a href="http://www.prograficion.net/about/">About</a></li>
<li id="li_colabora"><a href="#">Colabora</a></li>
<li id="li_contacto"><a href="http://www.prograficion.net/contacto/contacto.html?marcar=contacto">Contacto</a></li>
</ul>

No sé como se llama tu página principal de contacto, en este caso la he denominado 'contacto.html'. Al cargar la página llamamos a un método que rescata el parámetro que hemos creado y valora qué opción debe marcar:

<body onload="bucarParametro();".....>

//metodo js para localizar el parámetro
function buscarParametro()
{
var queryString = location.search.substr(1); /*esta variable rescata todos los parámetros pasados en la URL --> marcar=contacto*/
var valorParametro = queryString.split('='); /*troceamos el parámetro para obtener lo que va detrás del igual --> valorParametro[0]='marcar', valorParametro[1]='contacto'

if(valorParametro[1]=='contacto')
document.getElementById('li_contacto').style.backg roundColor = 'lime';
/*en este caso solo preguntamos por si el parámetro es igual a 'contacto'. si así es pinta de color lima el elemento de la lista que previamente le hemos dado un id*/
}


espero que te haya quedado más claro así. para cada elemento de tu lista deberías de preguntar en el if para pintar o no del color que quieras dicho elemento. o bueno, lo más lógico en este caso es usar un switch para valorar en cada caso qué hacer.

salu2