Foros del Web » Programando para Internet » Javascript »

Javascript y Css

Estas en el tema de Javascript y Css en el foro de Javascript en Foros del Web. Tengo la siguiente duda, es posible seleccionar una clase de ccs con un code javascript? esta es mi base para la idea @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 07/10/2014, 02:54
 
Fecha de Ingreso: abril-2013
Ubicación: Bs.As
Mensajes: 56
Antigüedad: 11 años
Puntos: 0
Javascript y Css

Tengo la siguiente duda, es posible seleccionar una clase de ccs con un code javascript?

esta es mi base para la idea

Código CSS:
Ver original
  1. #prueba {...}

Código Javascript:
Ver original
  1. <script>
  2. var tocarunaid = document.getElementById("prueba ");
  3. </script>

(esto funciona para tocar id pero seria posible tocar un class?)

Código CSS:
Ver original
  1. .prueba {...}
Código Javascript:
Ver original
  1. <script>
  2. var tocarunaclass = document.getElementByClass("prueba ");
  3. </script>

Existe algo asi?
  #2 (permalink)  
Antiguo 07/10/2014, 04:48
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Javascript y Css

busca información sobre querySelector() o querySelectorAll()
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 07/10/2014, 08:41
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Javascript y Css

La función se llama getElementsByClassName()... es de los métodos más básicos del DOM
  #4 (permalink)  
Antiguo 07/10/2014, 13:03
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Javascript y Css

Cita:
Iniciado por PHPeros Ver Mensaje
La función se llama getElementsByClassName()... es de los métodos más básicos del DOM
es un método desfasado. tan desfasado, que la mdn ni tan siquiera se ha molestado en publicar un polyfill para versiones antiguas de ie
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #5 (permalink)  
Antiguo 19/11/2014, 23:19
 
Fecha de Ingreso: abril-2013
Ubicación: Bs.As
Mensajes: 56
Antigüedad: 11 años
Puntos: 0
Respuesta: Javascript y Css

pero funciona? lo testie con esto y no me funco
  #6 (permalink)  
Antiguo 19/11/2014, 23:20
 
Fecha de Ingreso: abril-2013
Ubicación: Bs.As
Mensajes: 56
Antigüedad: 11 años
Puntos: 0
Respuesta: Javascript y Css

http://jsfiddle.net/6rrwxq70/
  #7 (permalink)  
Antiguo 20/11/2014, 01:17
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Javascript y Css

El detalle está en que el método getElementsByClassName, devuelve un conjunto de nodos, por lo que no es posible aplicar directamente el cambio de estilo al conjunto completo. Necesitas iterarlo y aplicarlo a cada uno de los elementos recogidos.

Código Javascript:
Ver original
  1. var code = document.getElementsByClassName("code1"),
  2.     btcode = document.getElementById("btcode");
  3.  
  4. btcode.addEventListener("click", function () {
  5.     for (var i = 0, total = code.length; i < total; i++){
  6.         code[i].style.width = code[i].style.width == "100px" ? "200px" : "100px";
  7.     }
  8. }, false);

Lo mismo ocurriría si utilizas el método querySelectorAll que acertadamente te recomendó utilizar IsaBelM, en especial porque IE8 ofrece soporte para dicho método y no para el que estás usando. Y si quieres utilizarlo en versiones anteriores a IE8, implementa esto al inicio de tu archivo JS.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: css, funcion
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 06:19.