Foros del Web » Programando para Internet » Javascript »

Fijar la primer columna de una tabla

Estas en el tema de Fijar la primer columna de una tabla en el foro de Javascript en Foros del Web. Hola a todos Tengo una tabla donde quiero fijar el encabezado y la primer columna, al mover el scroll horizontalmente quiero que la primer columna ...
  #1 (permalink)  
Antiguo 19/02/2010, 14:28
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 10 meses
Puntos: 3
Fijar la primer columna de una tabla

Hola a todos

Tengo una tabla donde quiero fijar el encabezado y la primer columna, al mover el scroll horizontalmente quiero que la primer columna se quede fija y al mover el scroll vertical el encabezado este fijo.

Ya puedo hacer lo del scroll vertical pero lo del scroll horizontal no lo he podido lograr, espero me puedan ayudar, asi tengo el style y la tabla:

<style type="text/css">

#container {display:block;}

#header{display:block;overflow:hidden;width:700px; }

#content {display:block;overflow:auto;position:relative;wid th:700px;height:300px;}

</style>

<script>
function getOnScroll(from) {
return function (event) {
if (navigator.appName == "Microsoft Internet Explorer" || navigator.appName == "Opera")
{
from.scrollLeft = event.srcElement.scrollLeft;}
else{
from.scrollLeft = event.target.scrollLeft;
}
};
}

function addSyncScroll(from, to) {
removeSyncScroll(from);
from.syncScroll = getOnScroll(from);
from.syncTo = to;
if (navigator.appName == "Microsoft Internet Explorer" || navigator.appName == "Opera"){
to.attachEvent("onscroll", from.syncScroll);
}
else {
to.addEventListener("scroll", from.syncScroll, true);
}

}

function removeSyncScroll(from) {
if (from.syncTo != null) {
if (navigator.appName == "Microsoft Internet Explorer" || navigator.appName == "Opera") {
from.syncTo.detachEvent("onscroll", from.syncScroll);
}
else{
from.syncTo.removeEventListener("scroll", from.syncScroll, true);
}

}

from.syncTo = null;
from.syncScroll = null;
}

</script>

<body>
<div id="container">

<div id="header"> este es para el encabezado

<table>
</table>
</div>

<div id="content">este es para el contenido de la tabla

<table>
</table>
</div>
</div>
</body>
</html>
<script>
addSyncScroll(document.getElementById("header"),do cument.getElementById("content"));
</script>


Gracias
  #2 (permalink)  
Antiguo 19/02/2010, 15:21
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 9 meses
Puntos: 29
Respuesta: Fijar la primer columna de una tabla

Lo que quieres es un position:fixed en tu css?
Sino, lo que dices solo se me ocurre con max-height y overflow-x

Saludos
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #3 (permalink)  
Antiguo 19/02/2010, 16:33
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 10 meses
Puntos: 3
Respuesta: Fijar la primer columna de una tabla

Gracias por contestar

Ya logré realizar lo que queria, lo malo es que solo funciona cuando el encabezado es simple, si tengo un encabezado en donde un título abarca 2 columnas por ejemplo, no funciona.

Alguien sabe como se haría para que funcionara con ese tipo de encabezados.?

gracias

Etiquetas: columna, fijar, primer, tablas
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:21.