Foros del Web » Programando para Internet » Javascript »

javascript:void (0)

Estas en el tema de javascript:void (0) en el foro de Javascript en Foros del Web. Tengo tres dudas teoricas que no logro resolver con el manual que utilizo: 1.- Sin utilizar DOM. ¿cómo puedo gestionar desde JS los contenidos y ...
  #1 (permalink)  
Antiguo 17/09/2007, 03:16
 
Fecha de Ingreso: septiembre-2005
Mensajes: 30
Antigüedad: 18 años, 7 meses
Puntos: 0
Pregunta javascript:void (0)

Tengo tres dudas teoricas que no logro resolver con el manual que utilizo:

1.- Sin utilizar DOM. ¿cómo puedo gestionar desde JS los contenidos y demás parámetros de las celdas de una tabla?. Es decir quisiera saber si la tabla es un objeto con propiedades y métodos, o forma parte de las propiedades de algún objeto.

2.- para cambiar el color de un enlace con onMouseOver (no con CSS), ¿cúal es el objeto y la propiedad que debo manejar?.

3.- He visto en varios lugares de las FAQ y en manuales esta expresión:

Código HTML:
<a href="javascript:void(0) gestión de eventos y demás</>"
¿Qué quiere decir tanto javascript: como void (0) como toda la expresión en su conjunto.


Gracias. Espero no sean excesivas preguntas,

Roge
  #2 (permalink)  
Antiguo 17/09/2007, 04:24
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: javascript:void (0)

"javascript:" es un pseudoprotocolo que viene indicando al navegador que el contenido del enlace es una sentencia javascript. En tu ejemplo la sentencia sería void(0);

Supongo que querías haber puesto:

Código:
<a href="javascript:void(0)" gestión de eventos y demás</a>
"void xxx" es un operador JavaScript que evalúa el parámetro (en tu caso el cero) y siempre devuelve 'undefined'.
__________________
Kelpie
  #3 (permalink)  
Antiguo 17/09/2007, 04:58
 
Fecha de Ingreso: septiembre-2005
Mensajes: 30
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: javascript:void (0)

Gracias Kelpie,

sí había un error tipográfico y faltaba la "a".


Por lo que dices sería el equivalente a usar:

Cita:
<a href="<script type="text/javascript">void (0);</script>"gestión de eventos y demás</a>
Roge
  #4 (permalink)  
Antiguo 17/09/2007, 07:53
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: javascript:void (0)

Hola:

1. Sin usar el DOM no puedes manipular nada... lo que pasa es que DOM no es solo getElementById... en las tablas existen las colecciones (arrays) rows y cells...

Para modificar el color de cualquier tag con javascript, debes modificar el estilo color:

onmousover="this.style.color = 'red'" onmouseout="this.style.color = 'blue'"

Lo de poner en un enlace algo empezado por "javascript:" es para en vez de usar el flujo normal del "hipertexto" -que se supone que hay en el href de un enlace- hacer que se ejecute un script... en el caso de void(0) es lo mismo que decir "nada"... personalmente me parece una práctica mala, ya que los enlaces están para enlazar, y para los scripts existen los eventos aplicables a cualquier tag... hemos discutido bastante al respecto en estos foros... si te interesa el tema, no dudes en hacer una búsqueda (aunque por momentos el buscador de los foros no sea muy fiable)...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 17/09/2007, 16:14
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 5 meses
Puntos: 45
Re: javascript:void (0)

Bueno, aunque el tema es un poco básico a ver si puedo explicar un par de cositas que tendrían que venir en los manuales de javascript.

Lo primero es que hay que saber (x)HTML para tener un documento correctamente estructurado y escrito. Ésto, evidentemente, incluye que no se pueden meter etiquetas HTML dentro de atributos... Si tenemos dudas de lo que podemos escribir y dónde la mejor referencia es la especificación de la w3.

Ésta especificación también habla del correcto manejo de los scripts. Ya se ha dicho por los foros muchas veces (y ahora que lo pienso, quizás deberíamos hacer incapié en una especie de FAQ para novatos que hable de todo ésto: cómo empezar con javascript) estas cosas de las que hablo.

Es decir, ésto empieza a ser incorrecto (aunque funcione en un navegador en concreto no quiere decir que sea correcto):
Código PHP:
<a href="javascript: void(0)">gestión de eventos y demás</a
Y ésto sería lo que todos deberíamos escribir para obtener el mismo efecto (aunque este ejemplo en concreto es un poco inútil):
Código PHP:
<a href="#" onclick="void(0)">gestión de eventos y demás</a

Bueno, dejo en el aire aquello del cómo empezar con javascript, creo que sería una buena idea. Comentad qué os parecería.



Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #6 (permalink)  
Antiguo 17/09/2007, 19:07
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: javascript:void (0)

Hola:

Tampoco me gusta poner href="#" si no se pretende ir al principio de la página... Una etiqueta "a" debería usarse para enlazar o anclar, y la costumbre de usarla para ejecutar scripts viene por querer que aparezca la mano que puede conseguirse fácilmente con estilos; y no le quitamos valor semántico a las etiquetas, ese tipo de truco/costumbre suele acompañarse de la instrucción return false para cancelar el enlace (más complicaciones y ambiguedades innecesarias)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:39.