Re: [Ovillo] cambiar las propiedades css mediante js
Txuma Campos escribió: Choan, yo creo que dependerá de los casos. Claro. En muchos de ellos no creo que fuese práctico, porque deberías tener tantas clases como posibilidades de cambio. Un ejemplo a botepronto podría ser modificar el color de fondo de un documento. Supón que el usuario puede escoger entre 15 opciones. Me parece más sencillo modificar la propiedad color del elemento body en la hoja de estilos (tal y como explicaba Vicente en un email anterior), que añadir 15 clases, ¿no te parece? En el caso que describes, sí, puede ser más práctico, pero dudo que sea más sencillo. Me explico: es más cómodo (y supone menos posibilidades de error) mantener 15 clases en una hoja de estilos que un switch (o un array o como te lo montes) para manejar las 15 opciones en javascript. Especialmente para alguien que no sea programador. Pero claro, para gustos, colores. Salud, Choan El 24/11/2005, a las 11:46, Choan C. Gálvez escribió: Y digo yo, ¿no es más sencillo cambiar el valor de `class` dinámicamente? Código ejemplo (boceto): var imgs = document.getElementsByTagName('img'); for (var i=0; null != (img = imgs[i]); ++i) { if (img.className == 'laclasequebusco') { img.className = 'lanuevaclase'; } } En la hoja de estilos defines ambas clases y listo. ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
Choan, yo creo que dependerá de los casos. En muchos de ellos no creo que fuese práctico, porque deberías tener tantas clases como posibilidades de cambio. Un ejemplo a botepronto podría ser modificar el color de fondo de un documento. Supón que el usuario puede escoger entre 15 opciones. Me parece más sencillo modificar la propiedad color del elemento body en la hoja de estilos (tal y como explicaba Vicente en un email anterior), que añadir 15 clases, ¿no te parece? Un saludo Txuma Campos [EMAIL PROTECTED] El 24/11/2005, a las 11:46, Choan C. Gálvez escribió: Y digo yo, ¿no es más sencillo cambiar el valor de `class` dinámicamente? Código ejemplo (boceto): var imgs = document.getElementsByTagName('img'); for (var i=0; null != (img = imgs[i]); ++i) { if (img.className == 'laclasequebusco') { img.className = 'lanuevaclase'; } } En la hoja de estilos defines ambas clases y listo. Un saludo, Choan ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
parra parra escribió: Ah vale, entiendo lo que me dices, pero el problema es que las imagenes no tienen id. Las imagenes pueden ser 3 o 30. por eso mismo todas tienen el mismo class y lo que queria modificar era precisamente el class, y que de esa manera se modificaran a la vez las propiedades de todas las imagenes. O sea mi duda no era como acceder a las propiedades de un elemento "html" sino de uno "css". Ni siquiera se si se puede hacer. He visto hacer por ahi esto: document.write(" .class {...propiedades...} "); pero claro, se iria escribiendo (y alargando) el documento indefinidamente cada vez que deseasen cambiar las propiedades y lo otro que se me habia ocurrido era generar una funcion js que recorriera todas las imagenes del documento cuyo class (o cualquier otro atributo coincidente) coincidiese... pero me sigue pareciendo mucho mas simple (si es que se puede) cambiar las proiedades del css. Y digo yo, ¿no es más sencillo cambiar el valor de `class` dinámicamente? Código ejemplo (boceto): var imgs = document.getElementsByTagName('img'); for (var i=0; null != (img = imgs[i]); ++i) { if (img.className == 'laclasequebusco') { img.className = 'lanuevaclase'; } } En la hoja de estilos defines ambas clases y listo. Un saludo, Choan ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
muchas gracias, era eso lo que exactamente estaba buscando. :) Vicente Gallur Valero <[EMAIL PROTECTED]> escribió: parra_listas escribió: > Hola a todos. > > Sabe alguien si es posible acceder a los objetos css para cambiarle > las propiedades en tiempo de ejecucion? habia pensado mediante > javascript, pero la verdad es que no se como referenciar el objeto > "css" ni sus elementos. > Puedes acceder a las reglas de las hojas de estilo que ha cargado la página mediante document.styleSheets[n].cssRules // W3C document.styleSheets[n].rules // Microsoft siendo n la posición de la hoja de estilos, normalmente 0. Obtendrás un vector con todas las reglas de la página, numeradas según el orden de aparición, por lo que te aconsejo que pongas las que quieras acceder en los primeros lugares para evitar problemas. Puedes acceder a la propiedad del siguiente modo: document.styleSheets[n].cssRule[n].style.nombredelapropiedad, por ejemplo: document.styleSheets[0].cssRule.style.color Más información: http://www.quirksmode.org/dom/changess.html -- Vicente Gallur Valero http://www.vgcomunicacion.com ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo - Correo Yahoo! Comprueba qué es nuevo, aquí http://correo.yahoo.es ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
Ah vale, entiendo lo que me dices, pero el problema es que las imagenes no tienen id. Las imagenes pueden ser 3 o 30. por eso mismo todas tienen el mismo class y lo que queria modificar era precisamente el class, y que de esa manera se modificaran a la vez las propiedades de todas las imagenes. O sea mi duda no era como acceder a las propiedades de un elemento "html" sino de uno "css". Ni siquiera se si se puede hacer. He visto hacer por ahi esto: document.write(" .class {...propiedades...} "); pero claro, se iria escribiendo (y alargando) el documento indefinidamente cada vez que deseasen cambiar las propiedades y lo otro que se me habia ocurrido era generar una funcion js que recorriera todas las imagenes del documento cuyo class (o cualquier otro atributo coincidente) coincidiese... pero me sigue pareciendo mucho mas simple (si es que se puede) cambiar las proiedades del css. la unica posibilidad que veo es la de cambiar la ref al archivo css, pero se me plantean varias dudas: ¿se auto refresca la pagina al cargar el nuevo class? y sobre todo ¿es posible cargar en memoria los distintos archivos css (para asi evitar la espera de la carga de los archivos cada vez quiera cambiar de css)? muchas gracias DJ-Dom <[EMAIL PROTECTED]> escribió: Al document.getElementById('spc').style.height=='15px'; Saludo, DJ-Dom El día 24/11/05, parra parra escribió: > > Entiendo que la primera forma de solucionar pasa por incluir el css en un > archivo externo y simplemente cambiar la referencia a otro. > > pero no me queda claro en la segunda posibilidad como cambio alguna de las > propiedades de alguno de los descriptores. > > es decir, en el siguiente ejemplo: > < html >< head > < style type="text/css" > .ndn {border:0px ; font-size:1pt;} .cdm {border:1px solid; font-size:1pt; border-color:black; } .spc {width:15px; height:16px;border:0px solid;cellspacing:0;cellpadding:0; top:0;left:0;} < /style > < /head > < body onload="javascript:inicializac();" > > #malla { > position:absolute;top:0;left:0; > border-collapse:collapse; > margin-top:37px; margin-left:102px; } > .ndn { border:0px; font-size:1pt; } > .cdm { border:1px solid; font-size:1pt; border-color:black; } > .spc { height:16px; width:15px; border:0px; } > ... > > > ¿como seria para acceder a las propiedades "height" y "width" de ".spc"? > ( ".spc" es la clase para las imagenes, de las que no se cuantas va a > haber, solo se que estan incluidas en una tabla...) > > >Gracias > > > > DJ-Dom escribió: > > > document.getElementById('hojacss').href=='dom2.css'; > > o con > > document.getElementsByTagName('link').href='dom2.css'; > > Aunque puedes acceder a un elemento en concreto en concreto: > > document.getElementById('ID-DIV').class=='ClaseCSS'; > > o > > document.getElementById('ID-DIV').style.diplay=='none'; > > (diplay=='none'; es un ejemplo, puedes usar otros parámetros) > > > Saludo, > DJ-Dom > > > > > > El día 24/11/05, parra_listas > escribió: > > > > Hola a todos. > > > > Sabe alguien si es posible acceder a los objetos css para cambiarle las > > propiedades en tiempo de ejecucion? habia pensado mediante javascript, > > pero la verdad es que no se como referenciar el objeto "css" ni sus > > elementos. > > > > El asunto es que tengo que modificar el alto y el ancho de una serie de > > imagenes (variables en numero) que estan bajo el mismo class, y no se > como > > > > gracias a todos. > > - Correo Yahoo! Comprueba qué es nuevo, aquí http://correo.yahoo.es ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
Al document.getElementById('spc').style.height=='15px'; Saludo, DJ-Dom El día 24/11/05, parra parra <[EMAIL PROTECTED]> escribió: > > Entiendo que la primera forma de solucionar pasa por incluir el css en un > archivo externo y simplemente cambiar la referencia a otro. > > pero no me queda claro en la segunda posibilidad como cambio alguna de las > propiedades de alguno de los descriptores. > > es decir, en el siguiente ejemplo: > > > #malla { > position:absolute;top:0;left:0; > border-collapse:collapse; > margin-top:37px; margin-left:102px; } > .ndn { border:0px; font-size:1pt; } > .cdm { border:1px solid; font-size:1pt; border-color:black; } > .spc { height:16px; width:15px; border:0px; } > > > > > ¿como seria para acceder a las propiedades "height" y "width" de ".spc"? > ( ".spc" es la clase para las imagenes, de las que no se cuantas va a > haber, solo se que estan incluidas en una tabla...) > > > document.getElementById('ID-DIV').style.height=='15px'; > > > > DJ-Dom <[EMAIL PROTECTED]> escribió: > > > document.getElementById('hojacss').href=='dom2.css'; > > o con > > document.getElementsByTagName('link').href='dom2.css'; > > Aunque puedes acceder a un elemento en concreto en concreto: > > document.getElementById('ID-DIV').class=='ClaseCSS'; > > o > > document.getElementById('ID-DIV').style.diplay=='none'; > > (diplay=='none'; es un ejemplo, puedes usar otros parámetros) > > > Saludo, > DJ-Dom > > > > > > El día 24/11/05, parra_listas > escribió: > > > > Hola a todos. > > > > Sabe alguien si es posible acceder a los objetos css para cambiarle las > > propiedades en tiempo de ejecucion? habia pensado mediante javascript, > > pero la verdad es que no se como referenciar el objeto "css" ni sus > > elementos. > > > > El asunto es que tengo que modificar el alto y el ancho de una serie de > > imagenes (variables en numero) que estan bajo el mismo class, y no se > como > > > > gracias a todos. > > > > > > __ > > Renovamos el Correo Yahoo! > > Nuevos servicios, más seguridad > > http://correo.yahoo.es > > ___ > > Lista de distribución Ovillo > > Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org > > Puedes modificar tus datos o desuscribirte en la siguiente dirección: > > http://ovillo.org/mailman/listinfo/ovillo > > > > > > -- > www.dj-dom.net > [EMAIL PROTECTED] > ___ > Lista de distribución Ovillo > Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org > Puedes modificar tus datos o desuscribirte en la siguiente dirección: > http://ovillo.org/mailman/listinfo/ovillo > > > > > > - > > Correo Yahoo! > Comprueba qué es nuevo, aquí > http://correo.yahoo.es > ___ > Lista de distribución Ovillo > Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org > Puedes modificar tus datos o desuscribirte en la siguiente dirección: > http://ovillo.org/mailman/listinfo/ovillo > -- www.dj-dom.net [EMAIL PROTECTED] ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
Entiendo que la primera forma de solucionar pasa por incluir el css en un archivo externo y simplemente cambiar la referencia a otro. pero no me queda claro en la segunda posibilidad como cambio alguna de las propiedades de alguno de los descriptores. es decir, en el siguiente ejemplo: #malla { position:absolute;top:0;left:0; border-collapse:collapse; margin-top:37px; margin-left:102px; } .ndn { border:0px; font-size:1pt; } .cdm { border:1px solid; font-size:1pt; border-color:black; } .spc { height:16px; width:15px; border:0px; } ¿como seria para acceder a las propiedades "height" y "width" de ".spc"? ( ".spc" es la clase para las imagenes, de las que no se cuantas va a haber, solo se que estan incluidas en una tabla...) document.getElementById('ID-DIV').style.height=='15px'; DJ-Dom <[EMAIL PROTECTED]> escribió: document.getElementById('hojacss').href=='dom2.css'; o con document.getElementsByTagName('link').href='dom2.css'; Aunque puedes acceder a un elemento en concreto en concreto: document.getElementById('ID-DIV').class=='ClaseCSS'; o document.getElementById('ID-DIV').style.diplay=='none'; (diplay=='none'; es un ejemplo, puedes usar otros parámetros) Saludo, DJ-Dom El día 24/11/05, parra_listas escribió: > > Hola a todos. > > Sabe alguien si es posible acceder a los objetos css para cambiarle las > propiedades en tiempo de ejecucion? habia pensado mediante javascript, > pero la verdad es que no se como referenciar el objeto "css" ni sus > elementos. > > El asunto es que tengo que modificar el alto y el ancho de una serie de > imagenes (variables en numero) que estan bajo el mismo class, y no se como > > gracias a todos. > > > __ > Renovamos el Correo Yahoo! > Nuevos servicios, más seguridad > http://correo.yahoo.es > ___ > Lista de distribución Ovillo > Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org > Puedes modificar tus datos o desuscribirte en la siguiente dirección: > http://ovillo.org/mailman/listinfo/ovillo > -- www.dj-dom.net [EMAIL PROTECTED] ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo - Correo Yahoo! Comprueba qué es nuevo, aquí http://correo.yahoo.es ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
parra_listas escribió: Hola a todos. Sabe alguien si es posible acceder a los objetos css para cambiarle las propiedades en tiempo de ejecucion? habia pensado mediante javascript, pero la verdad es que no se como referenciar el objeto "css" ni sus elementos. Puedes acceder a las reglas de las hojas de estilo que ha cargado la página mediante document.styleSheets[n].cssRules // W3C document.styleSheets[n].rules // Microsoft siendo n la posición de la hoja de estilos, normalmente 0. Obtendrás un vector con todas las reglas de la página, numeradas según el orden de aparición, por lo que te aconsejo que pongas las que quieras acceder en los primeros lugares para evitar problemas. Puedes acceder a la propiedad del siguiente modo: document.styleSheets[n].cssRule[n].style.nombredelapropiedad, por ejemplo: document.styleSheets[0].cssRule.style.color Más información: http://www.quirksmode.org/dom/changess.html -- Vicente Gallur Valero http://www.vgcomunicacion.com ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
Re: [Ovillo] cambiar las propiedades css mediante js
document.getElementById('hojacss').href=='dom2.css'; o con document.getElementsByTagName('link').href='dom2.css'; Aunque puedes acceder a un elemento en concreto en concreto: document.getElementById('ID-DIV').class=='ClaseCSS'; o document.getElementById('ID-DIV').style.diplay=='none'; (diplay=='none'; es un ejemplo, puedes usar otros parámetros) Saludo, DJ-Dom El día 24/11/05, parra_listas <[EMAIL PROTECTED]> escribió: > > Hola a todos. > > Sabe alguien si es posible acceder a los objetos css para cambiarle las > propiedades en tiempo de ejecucion? habia pensado mediante javascript, > pero la verdad es que no se como referenciar el objeto "css" ni sus > elementos. > > El asunto es que tengo que modificar el alto y el ancho de una serie de > imagenes (variables en numero) que estan bajo el mismo class, y no se como > > gracias a todos. > > > __ > Renovamos el Correo Yahoo! > Nuevos servicios, más seguridad > http://correo.yahoo.es > ___ > Lista de distribución Ovillo > Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org > Puedes modificar tus datos o desuscribirte en la siguiente dirección: > http://ovillo.org/mailman/listinfo/ovillo > -- www.dj-dom.net [EMAIL PROTECTED] ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo
[Ovillo] cambiar las propiedades css mediante js
Hola a todos. Sabe alguien si es posible acceder a los objetos css para cambiarle las propiedades en tiempo de ejecucion? habia pensado mediante javascript, pero la verdad es que no se como referenciar el objeto "css" ni sus elementos. El asunto es que tengo que modificar el alto y el ancho de una serie de imagenes (variables en numero) que estan bajo el mismo class, y no se como gracias a todos. __ Renovamos el Correo Yahoo! Nuevos servicios, más seguridad http://correo.yahoo.es ___ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo