Foros del Web » Programando para Internet » Javascript »

¿que falla en mi codigo?

Estas en el tema de ¿que falla en mi codigo? en el foro de Javascript en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original < script language = "javascript" > function cambiar ( pipam ) { if ( document. getElementbyid ( pipam ...
  #1 (permalink)  
Antiguo 30/05/2010, 09:39
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
¿que falla en mi codigo?

Código Javascript:
Ver original
  1. <script language="javascript">
  2. function cambiar(pipam){
  3. if(document.getElementbyid(pipam).src=="imagenes/privado.png"){
  4. document.getElementbyid(pipam).src="imagenes/publico.png";
  5. }else{
  6. document.getElementbyid(pipam).src="imagenes/privado.png";
  7. }}
  8. </script>


Código HTML:
Ver original
  1. <span onclick="cambiar('privado')"><img   src="imagenes/publico.png" width="25" height="25" alt="Privado/Publico" id="privado" /></span>
Cuando clikeo en la imagen no pasa nada
  #2 (permalink)  
Antiguo 30/05/2010, 10:09
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: ¿que falla en mi codigo?

no estas llamando a la funcion correcta. javascript es sensible a las mayuscula y minusculas, fijate que getElementById no lo tienes correcto.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 30/05/2010, 10:14
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Respuesta: ¿que falla en mi codigo?

:), tengo esto
Código Javascript:
Ver original
  1. <script language="javascript">
  2. function cambiar(pipam){
  3. if (document.getElementById(pipam).src == "imagenes/privado.png"){
  4. document.getElementById(pipam).src="imagenes/publico.png";
  5. }else{
  6. document.getElementById(pipam).src="imagenes/privado.png";
  7. }}
  8.  
  9. </script>
Ahora si funciona a medias, osea si el src esta en "imagenes/publico.png" me la cambia a "imagenes/privado.png", pero si esta en "imagenes/privado.png" no la cambia a "imagenes/publico.png", no tengo ni idea por que sera.. ¿e if esta bien escrito no?
lo he comparado con otros que si me funcionan y esta bien :S ni idea por que puede ser..
  #4 (permalink)  
Antiguo 30/05/2010, 10:20
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: ¿que falla en mi codigo?

Hola:

Aunque el atributo src tenga una ruta relativa, javascript te va a procesar la ruta absoluta, así que la pregunta deberías hacerla contemplándo eso... por ejemplo:

ruta = document.getElementById(pipam).src.split("/"); if (ruta[ruta.length - 1] == "privado.png")...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 30/05/2010, 10:24
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: ¿que falla en mi codigo?

en el sentido sintáctico el codigo esta bien escrito. el problema es que la propiedad src lee la ruta completa. es decir, la ruta aparece con todo su protocolo, domionio, directorio, y nombre de archivo. hay varias formas obtener el valor que necesitas. en tu caso, uno bien facil seria que en lugar de leer la propiedad src, utiliza el metodo getAttribute para obtener el valor tal como aparece en el codigo fuente.

@edit,
hola caricatos, otra vez nos tropezamos
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 30/05/2010, 10:28
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Respuesta: ¿que falla en mi codigo?

Cita:
Iniciado por caricatos Ver Mensaje
Hola:

Aunque el atributo src tenga una ruta relativa, javascript te va a procesar la ruta absoluta, así que la pregunta deberías hacerla contemplándo eso... por ejemplo:

ruta = document.getElementById(pipam).src.split("/"); if (ruta[ruta.length - 1] == "privado.png")...

Saludos
¿por que el - 1? me he estuado el codigo, pero me falta saber eso..
  #7 (permalink)  
Antiguo 30/05/2010, 10:39
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: ¿que falla en mi codigo?

Cita:
Iniciado por zerokilled Ver Mensaje
@edit,
hola caricatos, otra vez nos tropezamos
¡Je, je! ... y lo que nos queda... ,

Cita:
Iniciado por angel1993 Ver Mensaje
¿por que el - 1? me he estuado el codigo, pero me falta saber eso..
Los arrays se indexan desde el cero, así que si el array obtenido es de n elementos, el último (o sea el que nos interesa) será el n - 1...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 30/05/2010, 15:31
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Respuesta: ¿que falla en mi codigo?

ahh, gracias tio :)

Etiquetas: falla
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 22:09.