Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Modificar estilo de una clase con js.

Estas en el tema de Modificar estilo de una clase con js. en el foro de Javascript en Foros del Web. Resulta que quiero que al posicionarme sobre un div que es una clase y este cambie el color de fondo, pero como es una clase ...
  #1 (permalink)  
Antiguo 07/02/2013, 08:46
 
Fecha de Ingreso: noviembre-2007
Mensajes: 43
Antigüedad: 16 años, 5 meses
Puntos: 0
Modificar estilo de una clase con js.

Resulta que quiero que al posicionarme sobre un div que es una clase y este cambie el color de fondo, pero como es una clase y se repite varias veces en toda la pagina, tambien cambien de color el resto de los divs de la misma clase..
Crei que podia hacerlo mediante estilos pero solo funciona con el div en el que estoy posicionado y por este motivo intente con js pero continuo teniendo el mismo problema.
ej
<script type='javascript'>
funcion cambiarcolor(div){
div.style.backgroundColor="#000000";
}
</script>
<div class='div1' onMouseover='cambiarcolor(this)'></div>
....
<div class='div1' onMouseover='cambiarcolor(this)'></div>

Es decir si me posiciono sobre el div1 cambien el color de fondode todos los divs1 de la pagina.

No conozco mucho de js por lo que les pido una ayudita..
  #2 (permalink)  
Antiguo 07/02/2013, 09:01
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Modificar estilo de una clase con js.

Tenes que recorrer todos los divs de tu página, detectar cuales tienen la calse y modificar en estos la propiedad que requieras

un ejemplo hecho para otra cosa, pero el principio es el mismo

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="es-ar">
  3. <meta charset="utf-8" />
  4. <title>Contar elementos</title>
  5. <script type="text/javascript">
  6. //<![CDATA[
  7. // con una clase específica
  8. var tags_li = [];
  9. function dli(clase) {
  10. var tags_li=document.getElementsByTagName('li');
  11. var i;
  12. for (i=0; i<tags_li.length; i++) {
  13. if (tags_li[i].className=='abc') {
  14. tags_li[i].style.background = 'lime';
  15.  
  16. }
  17. }
  18.  
  19. }
  20. //]]>
  21. </head>
  22. <body onload="dli('abc')">
  23. <div>
  24. <ul>
  25. <li class="a">1</li>
  26. <li class="abc">xllsls</li>
  27. <li class="a">3</li>
  28. <li class="abc">4</li>
  29. <li class="a">5</li>
  30. <li class="a">6</li>
  31. </ul>
  32. </div>
  33. </body>
  34. </html>
mirá como funciona
getElementsByTagName

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 07/02/2013, 10:32
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Modificar estilo de una clase con js.

Otra manera:
Código PHP:
<!DOCTYPE html>
<
html>
<
head>
<
meta charset="utf-8" />
<
title>...</title>
<
style>
.
div1background:redcolor:white;}
</
style>
<
script type="text/javascript">
function 
addCss(cssCode,i) { 
    
control=document.getElementById(i
    if(
control
        
document.getElementsByTagName("head")[0].removeChild(control
    var 
styleElement document.createElement("style"); 
    
styleElement.type "text/css"
    if (
styleElement.styleSheet) { 
        
styleElement.styleSheet.cssText cssCode
    } else { 
        
styleElement.appendChild(document.createTextNode(cssCode)) 
    } 
    
styleElement.id =i
    
document.getElementsByTagName("head")[0].appendChild(styleElement); 

</script>

</head>

<body>
<div class="div1">Cuando despertó, el dinosaurio todavía estaba allí.</div>
<script type="text/javascript">
addCss('.div1{ width:200px; height:200px;background:black; color:red; padding:10px; cursor:pointer}.div1:hover{background:red; color:white;}','esdin1');
</script>
</body>
</html> 
  #4 (permalink)  
Antiguo 07/02/2013, 11:56
 
Fecha de Ingreso: noviembre-2007
Mensajes: 43
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Modificar estilo de una clase con js.

Gracias, pude hacerlo andar... aprendi algo nuevo...

Etiquetas: clase, estilo, funcion, js, modificar
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 21:07.