Foros del Web » Programando para Internet » Javascript »

addclass con javascript

Estas en el tema de addclass con javascript en el foro de Javascript en Foros del Web. Como se añade una clase por javascrip sobre una elemento que se clickea en el, un enlace por ejemplo?...
  #1 (permalink)  
Antiguo 18/12/2015, 02:30
 
Fecha de Ingreso: marzo-2008
Mensajes: 43
Antigüedad: 16 años, 1 mes
Puntos: 0
addclass con javascript

Como se añade una clase por javascrip sobre una elemento que se clickea en el, un enlace por ejemplo?
  #2 (permalink)  
Antiguo 18/12/2015, 04:49
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Respuesta: addclass con javascript

Puedes usar add de la API classList.

Código Javascript:
Ver original
  1. elemento.classList.add('una_clase');

También tienes remove para eliminar clases y toggle para alternarlas.
__________________
(:
  #3 (permalink)  
Antiguo 18/12/2015, 07:12
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: addclass con javascript

lo primero es que no tiene el más mínimo sentido añadir una clase a un link. en el caso que quieras hacer una especie de rollover, para eso está css. en caso contrario, el link, es un error semántico.

completando la respuesta de @pzin, si te preocupa la compatibilidad con navegadores antiguos, entonces, has de usar el método className(), tanto para añadir como para eliminar la clase
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #4 (permalink)  
Antiguo 21/12/2015, 05:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 43
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: addclass con javascript

Muchas gracias isabelm y pzin,
si, me preocupa lo de navegadores antiguos, ya lo he creado con className, el nuevo problema es ahora el siguiente.
quiero que cuadno se pinche en una fila se le añada una clase(conseguido), pero lo que no quiero es que al volver a pinchar se le vuelva a añadir otra clase igual.
  #5 (permalink)  
Antiguo 21/12/2015, 08:31
 
Fecha de Ingreso: agosto-2015
Ubicación: En Carúpano
Mensajes: 49
Antigüedad: 8 años, 8 meses
Puntos: 12
Respuesta: addclass con javascript

Aquí una función que creé, pero, creo que será la ultima, las próximas ayudas que dé serán en textos para que ustedes mismos lo hagan y entiendan lo que hicieron, es mucho mejor, verdad?
Código Javascript:
Ver original
  1. Element.prototype.addClass = function(clase) {
  2.     var clases = this.className.split(" ")
  3.     var exist = false // esta variable la uso para verificar si existe esa clase actualmente en el elemento
  4.     for (i in clases) {
  5.         if (clases[i] == clase) exist = true
  6.     }
  7.     if (exist) {
  8.         //aqui si quieres puedes editar la funcion a tu manera y hacer una funcion tipo "toggle"
  9.     } else {
  10.         // si no existe agrego la clase
  11.         if (this.className == '') { //esta sentencia "if" es solo para evitar el espacio en blanco a principio del atributo "Class"
  12.             this.className = clase
  13.         } else {
  14.             this.className += " " + clase
  15.         }
  16.     }
  17.     return this
  18. }
Su uso:
Código Javascript:
Ver original
  1. elemento = document.createElement("div") // creo un elemeto div,puede ser cualquier otro obviamente.
  2. elemento.addClass("ClaseNueva") // aqui estoy agregando una clase llamada "ClaseNueva" al elemento
  3. //Otro ejemplo:
  4. elemento = document.getElementById("elemento")
  5. elemento.addClass("ClaseNueva")

Última edición por larrysun2; 21/12/2015 a las 08:46

Etiquetas: Ninguno
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 23:12.