Foros del Web » Programando para Internet » Javascript »

getElementById('x').style.backgroundImage='a';

Estas en el tema de getElementById('x').style.backgroundImage='a'; en el foro de Javascript en Foros del Web. buenas de nuevo! estoy dándole vueltas a este asunto: Código HTML: function menosmas(el) { var obj = document.getElementById(el); var mas = "url(mas.gif)"; var menos = ...
  #1 (permalink)  
Antiguo 08/04/2011, 02:20
 
Fecha de Ingreso: junio-2009
Mensajes: 156
Antigüedad: 14 años, 10 meses
Puntos: 7
getElementById('x').style.backgroundImage='a';

buenas de nuevo! estoy dándole vueltas a este asunto:
Código HTML:
function menosmas(el) {
	var obj = document.getElementById(el);
	var mas = "url(mas.gif)";
	var menos = "url(menos.gif";
	if(obj.style.display='none'){
		obj.style.backgroundImage = mas }
	else if(obj.style.display='block'){
		obj.style.backgroundImage = menos }
}
y no se donde está el error... (soy MUY novato en js)
la idea es hacer un "mostrar más" o menos usando los iconos mas.gif y menos.gif...

alguien puede echarme una manita?
  #2 (permalink)  
Antiguo 08/04/2011, 08:01
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: getElementById('x').style.backgroundImage='a';

Prueba así:
Código HTML:
Ver original
  1. <div onclick='cambiaFoto(this)'></div>
  2. <div id='contenido'>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique nibh vel neque viverra at pharetra justo pulvinar. Cras sed erat arcu, iaculis cursus odio. Mauris eu ultricies sapien. Nulla feugiat hendrerit velit ac ullamcorper. Duis lacinia lectus vel sem accumsan lobortis. Proin hendrerit eros eget arcu convallis facilisis. Fusce in sapien eget enim dapibus blandit a vel turpis. Pellentesque ornare leo arcu. Nulla pretium ullamcorper ligula ac pretium. Nulla porttitor gravida hendrerit. Maecenas dignissim lorem non sem molestie venenatis non nec dolor. </div>
Código Javascript:
Ver original
  1. function cambiaFoto(div){
  2.  var disp = document.getElementById('contenido').style.display;
  3.  disp = disp == 'none' ? 'block' : 'none';
  4.  div.style.backgroundImage = (disp == 'none' ? 'mas' : 'menos') + '.gif';
  5. }
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #3 (permalink)  
Antiguo 11/04/2011, 01:09
 
Fecha de Ingreso: junio-2009
Mensajes: 156
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: getElementById('x').style.backgroundImage='a';

Muchas gracias, _cronos2, pero no me sirve esta función, ya que solo cambia una imagen "A" por otra "B", lo que yo busco es una función que cambie la "A" por la "B" o viceversa, según la que se esté mostrando.
Se te ocurre algo? :P
  #4 (permalink)  
Antiguo 11/04/2011, 07:39
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: getElementById('x').style.backgroundImage='a';

A ver ahora:
Código Javascript:
Ver original
  1. function cambiaFoto(div){
  2.  var cnt = document.getElementById('contenido'), disp = cnt.style.display || 'block';
  3.  div.style.backgroundImage = (disp == 'none' ? 'ma' : 'meno') + 's.gif';
  4.  cnt.style.display = disp == 'none' ? 'block' : 'none';
  5. }
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #5 (permalink)  
Antiguo 12/04/2011, 01:13
 
Fecha de Ingreso: junio-2009
Mensajes: 156
Antigüedad: 14 años, 10 meses
Puntos: 7
Respuesta: getElementById('x').style.backgroundImage='a';

no me funciona :( acabo de probarlo. Luego... tambien me gustaria que me explicases el por qué de utilizar 2 div's en vez de uno... luego solo cojes la id de uno de ellos, no? y la id del otro... ¿se podria decir que está 'fija' en el código?

Etiquetas: Ninguno
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 14:08.