Foros del Web » Programando para Internet » Javascript »

Cambiar Color de fila al pasar el mouse

Estas en el tema de Cambiar Color de fila al pasar el mouse en el foro de Javascript en Foros del Web. Hola que tal a todos, tengo una duda con respecto a esto, espero puedan ayudarme.... saben que quiero que algunas de las filas de una ...
  #1 (permalink)  
Antiguo 30/10/2012, 18:36
 
Fecha de Ingreso: octubre-2012
Mensajes: 14
Antigüedad: 11 años, 5 meses
Puntos: 0
Mensaje Cambiar Color de fila al pasar el mouse

Hola que tal a todos, tengo una duda con respecto a esto, espero puedan ayudarme.... saben que quiero que algunas de las filas de una tabla cambien de color al pasar el mouse... encontre este script de otro chico del foro:

Código:
<style type="text/css">
table {border-collapse:collapse;border:1px solid maroon;margin-left:80px}
td {border:1px solid maroon;width:30px;text-align:center}
</style>
<script type="text/javascript">
<!--
function ini() {
  tab=document.getElementById('tabla');
  for (i=0; ele=tab.getElementsByTagName('td')[i]; i++) {
    ele.onmouseover = function() {iluminar(this,true)}
    ele.onmouseout = function() {iluminar(this,false)} 
  }
}

function iluminar(obj,valor) {
  fila = obj.parentNode;

    for (i=0; ele = fila.getElementsByTagName('td')[i]; i++)
      ele.style.background = (valor) ? '#B9F8F8' : '';
}
-->
</script>
</head>
<body onload="ini()">
<p>
</p>
<table id="tabla" border="1">
<tr>
<td>1.1</td><td>1.2</td><td>1.3</td>
</tr>
<tr>
<td>2.1</td><td>2.2</td><td>2.3</td>
</tr>
<tr>
<td>3.1</td><td>3.2</td><td>3.3</td>
</tr>
</table>
</body>
yo lo inclui en mi pagina. y le coloque el color rosa claro q yo queria y todo marcha bien... pero tengo un problema y es el siguiente:

https://docs.google.com/open?id=0BzXM1QGCj9wFVzhEaHFRTUJUdGM

(en la imagen se observa como cambia a rosa claro y no quiero q lo haga la primera fila, solo quiero q cambien los registros. no los titulos ni nada.)

cuando coloco el mouse sobre la primera, segunda. y ultima fila.. tambien me lo cambia...

quisiera saber como evitar que cambie en esas tres? gracias

Última edición por ArmandoGlam; 30/10/2012 a las 19:56
  #2 (permalink)  
Antiguo 30/10/2012, 20:27
 
Fecha de Ingreso: octubre-2012
Mensajes: 14
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Cambiar Color de fila al pasar el mouse

ya he logrado que no me tome las dos primeras filas al modificar el valor de inicialización de i en 8... ya que... 1 es la columna de arriba.. y 7 son las columnas de la seguna fila: 1+7: 8, el efecto empieza desde la octava columna.... todo va bien... pero no logro hacer que no me tome la ultima? por favor ayuda

function ini() {
tab=document.getElementById('tablaprincipal');
for (i=8; ele=tab.getElementsByTagName('td')[i]; i++) {
ele.onmouseover = function() {iluminar(this,true)}
ele.onmouseout = function() {iluminar(this,false)}
}
}
  #3 (permalink)  
Antiguo 31/10/2012, 16:15
Avatar de jpurizaca  
Fecha de Ingreso: marzo-2012
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Cambiar Color de fila al pasar el mouse

Si quieres cambiar el color de la fila al pasar el mouse deberias usar css ejemplo:

Código HTML:
Ver original
  1. <title>Ejemplo by jpurizaca</title>
  2. .alternar:hover{ background-color:#B9F8F8;}
  3. </head>
  4.  
  5.  
  6.     <tr>
  7.         <td>Titulo 1</td>
  8.         <td>Titulo 2</td>
  9.         <td>Titulo 3</td>
  10.     </tr>
  11.     <tr class="alternar">
  12.         <td>Registro1</td>
  13.         <td>Registro1</td>
  14.         <td>Registro1</td>
  15.     </tr>
  16.     <tr class="alternar">
  17.         <td>Registro2</td>
  18.         <td>Registro2</td>
  19.         <td>Registro2</td>
  20.     </tr>
  21.  
  22. </body>
  23. </html>
  #4 (permalink)  
Antiguo 31/10/2012, 20:10
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Respuesta: Cambiar Color de fila al pasar el mouse

como bien dijo el compañero @jpurizaca eso se hace con CSS usar Javascript es una maña de antaño...

aunque yo mejoraría su ejemplo con
Código CSS:
Ver original
  1. tr:hover td{background:red;}
Código HTML:
Ver original
  1.     <tr>
  2.         <th>Titulo 1</th>
  3.         <th>Titulo 2</th>
  4.         <th>Titulo 3</th>
  5.     </tr>
  6.     <tr class="alternar">
  7.         <td>Registro1</td>
  8.         <td>Registro1</td>
  9.         <td>Registro1</td>
  10.     </tr>
  11.     <tr class="alternar">
  12.         <td>Registro2</td>
  13.         <td>Registro2</td>
  14.         <td>Registro2</td>
  15.     </tr>

los títulos en una tabla son con <th>, por lo que si quieres afectar las filas excepto títulos es una buena idea atacar directamente por los <td>, principalmente cuando la tabla es muy larga y te ahorras escribir una clase en cada <tr> como el ejemplo del compañero.
  #5 (permalink)  
Antiguo 31/10/2012, 22:55
 
Fecha de Ingreso: octubre-2012
Mensajes: 14
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Cambiar Color de fila al pasar el mouse

graciaaaaaaas con los ejemplos del final lo he logrado muchas gracias les agradesco el tiempo que se tomaron en contestarme los dos. tremendamente agradecido saludos

Etiquetas: color, fila, mysql
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 13:17.