Código de CSS - Cambiando el estilo del div

Imágen de perfil

Cambiando el estilo del divgráfica de visualizaciones


CSS

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 14 de Octubre del 2008 por Xavi
10.130 visualizaciones desde el 14 de Octubre del 2008. Una media de 28 por semana
Código que muestra como cambiar el estilo de varios div para esconder y mostrar un listado de divs utilizando JavaScript y estilos CSS.
Probado con IE 5,6 y 7, Firefox 2.0, Opera 9.60 y Safari 3.

Versión 1
estrellaestrellaestrellaestrellaestrella(1)

Publicado el 14 de Octubre del 2008gráfica de visualizaciones de la versión: Versión 1
10.131 visualizaciones desde el 14 de Octubre del 2008. Una media de 28 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
 Codigo que muestra como canviar el valor de la propiedad class de una lista de divs

 Este codigo ha sido probado con IE 5,6 y 7, Firefox 2.0, Opera 9.60 y Safari 3
 http://www.lawebdelprogramador.com
-->
<html>
<head>
<title>Mostrar y esconder un listado de divs cambiando el estilo del div (JavaScript y estilos CSS)</title>
 
<style type="text/css">
/* Determina los estilos para mostrar el contenido */
.estilo1show {border:1px solid;margin-top:10px;padding:5px;}
.estilo2show {border:1px solid;margin-top:10px;padding:5px;font-weight:bold;}
/* Determina los estilos para NO mostrar el contenido */
.estilo1hide {display:none;}
.estilo2hide {display:none;}
/* Estilo de ejemplo para los divs internos */
.otroEstilo {border:1px solid;margin-top:10px;padding:5px;font-weight:normal;}
</style>
 
<script type="text/javascript">
<!--
/* En estas variables, las definiremos en la funcion load */
var table=""
var cells=""

/*
 * Esta funcion se ejecuta el cargar la web, en el evento onload() del body
 */
function load()
{
	/* table equivale al contenido del id "list" */
	table=document.getElementById("list");
	/* cells es una lista de los elementos encontrados en el orden en que aparecen */
	cells=table.getElementsByTagName('div');
}
 
/*
 * Funcion para esconder los estilos
 * Tiene que recibir el nombre del estilo a esconder
 */
function ocultarEstilo(estilo)
{
	/* Realizamos un bucle por todos los elementos del id "list" */
	for(var i=0;i<cells.length;i++)
	{
		/* Si concuerda el nombre del div con el parametro recibido... */
		if(table.getElementsByTagName('div')[i].getAttribute('name')==estilo)
		{
			/* Cambiamos el estilo del mismo por uno que este oculto */
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),estilo+'hide');
		}
	}
}
 
/*
 * Funcion para mostrar los estilos
 * Tiene que recibir el nombre del estilo a mostrar
 */
function mostrarEstilo(estilo)
{
	for(var i=0;i<cells.length;i++)
	{
		if(table.getElementsByTagName('div')[i].getAttribute('name')==estilo)
		{
			/* Cambiamos el estilo del mismo por uno que este visible */
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),estilo+'show');
		}
	}
}
 
/*
 * Funcion para ocultar todos los divs dentro del id "List"
 */
function ocultarEstilos()
{
	for (var i=0;i<cells.length;i++)
	{
		/* Canviamos los estilos para ocultarlos de todos los divs con los nombres estilo1 y estilo2 */
		if(table.getElementsByTagName('div')[i].getAttribute('name')=="estilo1")
		{
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),'estilo1hide');
		}else if(table.getElementsByTagName('div')[i].getAttribute('name')=="estilo2"){
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),'estilo2hide');
		}
	}
}
 
/*
 * Funcion para mostrar todos los divs dentro del id "List"
 */
function mostrarEstilos()
{
	for (var i=0;i<cells.length;i++)
	{
		/* Canviamos los estilos para visualizarlos de todos los divs con los nombres estilo1 y estilo2 */
		if(table.getElementsByTagName('div')[i].getAttribute('name')=="estilo1")
		{
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),'estilo1show');
		}else if(table.getElementsByTagName('div')[i].getAttribute('name')=="estilo2"){
			table.getElementsByTagName('div')[i].setAttribute((document.all?'className':'class'),'estilo2show');
		}
	}
}
-->
</script>
</head>
 
<!-- Al finalizar la carga de la pagina, cargamos los valores iniciales -->
<body onload="javascript:load()">
 
<h1>Mostrar y esconder un listado de divs cambiando el estilo del div (JavaScript y estilos CSS)</h1>
<p>
	<!--
	Opciones de menu
	Depende de la opción que pulsemos, mostramos u ocultamos algunos divs
	cambiandole el estilo estiloNshow por estiloNhide
	-->
	<a href="javascript:ocultarEstilo('estilo1');">Esconder estilo1</a>
	<br /><a href="javascript:ocultarEstilo('estilo2');">Esconder estilo2</a>
	<br /><a href="javascript:mostrarEstilo('estilo1');">Mostrar estilo1</a>
	<br /><a href="javascript:mostrarEstilo('estilo2');">Mostrar estilo2</a>
	<br /><a href="javascript:ocultarEstilos();">Quitar todos los estilos</a>
	<br /><a href="javascript:mostrarEstilos();">Mostrar todos estilos</a>
</p>
 
<!-- div principal -->
<div id="list">
	<!-- listado de divs que canviaremos su class -->
	<div name="estilo1" class="estilo1show">div name estilo1
		<div class='otroEstilo'>div dentro de estilo1. Este estilo no se ve afectado porque no tiene como name estilo1</div>
	</div>
	<div name="estilo2" class="estilo2show">div name estilo2
		<div class='otroEstilo'>div dentro de estilo2. Este estilo no se ve afectado porque no tiene como name estilo2</div>
	</div>
	<div name="estilo1" class="estilo1show">div name estilo1</div>
	<div name="estilo2" class="estilo2show">div name estilo2</div>
	<div name="estilo1" class="estilo1show">div name estilo1</div>
	<div name="estilo2" class="estilo2show">div name estilo2</div>
</div>
 
</body>
</html>



Comentarios sobre la versión: Versión 1 (1)

yoryi
11 de Diciembre del 2010
estrellaestrellaestrellaestrellaestrella
lo necesito para adaptarlo a php usando symfony
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s1712