Generalmente evitar utilizar "id." y "nombre" como identificadores porque pueden causar problemas. IM no está seguro si son palabras reservadas o no, pero su mejor evitarlos.
Un problema claro es que han obtenido una referencia al elemento que desea trabajar y almacenado en la variable que está llamando
nombre de , pero luego utiliza
div en lugar del nombre para tratar de manipularlo.
También están pasando el parámetro id a la función getElementById dentro de comillas cuando sólo debe utilizar el nombre del parámetro sin comillas. El
id de parámetro es una variable que contiene una cadena, pero si pones comillas la cadena "id" se transmitirá en lugar del valor que se encuentra en la variable.
Por último, has utilizan correctamente dos signos igual a prueba para ver si el estilo se establece en ninguno, pero usted también utiliza el doble signo igual para intentar asignar el nuevo valor que no va a funcionar. Utilice un signo igual para asignar valores.
He cambiado
id de a
theId y
nombre a
el de elemento y los otros cambios y funciona para mí:
<html>
<head>
<title>Untitled</title>
<script language="JavaScript">
function showAndHide(theId)
{
var el = document.getElementById(theId)
if (el.style.display=="none")
{
el.style.display="block"; //show element
}
else
{
el.style.display="none"; //hide element
}
}
</script>
</head>
<body>
<p><a href="#" onClick = showAndHide('Title')>Some Title</a></p>
<div id='Title' style="display:none">
<a href="http://linkhere/">01-Intro</a>
</div>
</body>
</html>
- <html>
- <head>
- <title>Untitled</title>
- <script language="JavaScript">
- function showAndHide(theId)
- {
- var el = document.getElementById(theId)
- if (el.style.display=="none")
- {
- el.style.display="block"; //show element
- }
- else
- {
- el.style.display="none"; //hide element
- }
- }
- </script>
- </head>
- <body>
- <p><a href="#" onClick = showAndHide('Title')>Some Title</a></p>
- <div id='Title' style="display:none">
- <a href="http://linkhere/">01-Intro</a>
- </div>
- </body>
- </html>
También se debe utilizar el
código etiqueta al publicar fragmentos del Foro aquí, para que ellos se mostrarán correctamente.
Cuando se utiliza esto, parecen saltar hasta la parte superior de la página cada vez haga clic en un vínculo. ¿Hay alguna forma de evitar esto?