Foros del Web » Programando para Internet » Javascript »

Modificando style con javascript

Estas en el tema de Modificando style con javascript en el foro de Javascript en Foros del Web. Hola todos, soy nuevo en el foro y mucho más nuevo en esto del JavaScript. He estado haciendo una página web aplicando javascript y css ...
  #1 (permalink)  
Antiguo 03/02/2012, 16:43
Avatar de Lichblitz  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia - Sincelejo
Mensajes: 6
Antigüedad: 12 años, 9 meses
Puntos: 0
Exclamación Modificando style con javascript

Hola todos, soy nuevo en el foro y mucho más nuevo en esto del JavaScript. He estado haciendo una página web aplicando javascript y css y aunque todo va bien me he encontrado con un problemilla que me tiene cabezon.
Tengo este codigo html que es el de un Acordeón que me encontré por allí, y le ando colocando algunas cosas para que se vea mas bonito:

Código:
<div id="AccordionContainer" class="AccordionContainer">
		<div  onclick=" runAccordion(1,100); changeStyle('Accordion1Title'); " >
			<div  id="Accordion1Title" class="AccordionTitle" onselectstart="return false;"  style="background-color: #E73E3E; ">
				<h1>Proyectos</h1>
				
			</div>
		</div>
		 <div id="Accordion1Content" class="AccordionOpen">
			<ul>
				<li><a href="/proyectos/">Proyectos</a></li>
				<li><a href="/proyectos/etapa/">Etapas</a></li>
				<li><a href="/proyectos/obra/">Obras</a></li>
				<li><a href="/proyectos/construccion/">Construcciones</a></li>
			</ul>
		</div>
		<div  onclick="runAccordion(2, 80);changeStyle('Accordion2Title');">
			<div id="Accordion2Title" class="AccordionTitle" onselectstart="return false;"  style="background-color: #E73E3E; ">
				<h1>Presupuesto</h1>
			</div>
			<div id="Accordion2Content" class="AccordionContent">
				<ul>
					<li><a href="/proyectos/presupuesto/">Presupuestos</a></li>
					<li><a href="/proyectos/capitulo/">Capitulos</a></li>
					<li><a href="/proyectos/subcapitulo/">SubCapitulos</a></li>
					<li><a href="/proyectos/apu/">APU</a></li>
				</ul>
			</div>
		</div>		
	</div>
Cómo ven tengo una función onclick=changeStyle('') que me recibe como parámetro el nombre del identificador del div del título de cada elemento del acordeón:
Código de changeStyle():
Código:
function changeStyle(elementId)
{
	
	var element =  document.getElementById(elementId);
	
	if(element.style.backgroundColor=="#E73E3E"){
		element.style.backgroundColor="#3066ff";
		
		
	}else{
		element.style.backgroundColor="#E73E3E";
		
		
}
Solamente quiero cambiarle el color de fondo cuando se le de click, pero no lo hace. Y si pruebo con style.color si funciona. WTF!!!? He hecho de cuanta cosa y nada que me resulta, muchas gracias por leerme y ojalá alguien me ayude.
  #2 (permalink)  
Antiguo 03/02/2012, 17:04
Avatar de Fernand0  
Fecha de Ingreso: septiembre-2005
Ubicación: Buenos Aires
Mensajes: 610
Antigüedad: 19 años, 1 mes
Puntos: 19
Respuesta: Modificando style con javascript

por lo general(no se si en todos los casos) el backgroundColor se termina guardando en formato rgb..

o sea que

element.style.backgroundColor=="#E73E3E" <-- esto esta mal..
element.style.backgroundColor=="rgb(231, 62, 62)" <-- esto te daria true...

si lo haces con .style.background = "#E73E3E"... el browser termina poniendote todo esto como "background": none repeat scroll 0% 0% rgb(231, 62, 62)

saludos
  #3 (permalink)  
Antiguo 03/02/2012, 17:13
Avatar de Lichblitz  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia - Sincelejo
Mensajes: 6
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Modificando style con javascript

UFFFF!!! Excelente!! Gracias eso ha sido una cura directa :D!!!

Etiquetas: funcion, html, style
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 10:41.