Necesito 'decorar' cada div.myclass con una función de manera que css lo haga con estilo, es decir, algunos de estos elementos no están en una página cuando se activa esta función, por lo que no puedo encontrar y recorrer a través de ellos. Algunos de los elementos se crean a partir de solicitudes ajax, y algunos están cambiando clases.

En css cuando un elemento cambia de clase, su estilo cambia instantáneamente. También necesito una situación similar aquí cuando, por ejemplo, todos los divs con class1 habrían declarado una función y con class2 otra, y cuando lo hago, por ejemplo:

document.getElementsByClassName("class1")[0].setAttribute("class", "class2");

El comportamiento de ese elemento debería cambiar instantáneamente.

Prefiero js puro, pero si hay un jquery más limpio o una forma prototipo, también me alegraré.

2
rsk82 1 jun. 2011 a las 14:54

3 respuestas

La mejor respuesta

Lectores futuros: .live () está en desuso y ya no se debe usar. En los casos anteriores donde se usaba .delegate () es un método más preferible.

https://stackoverflow.com/a/11115926/829835 esto es lo que está mal con .live ()

El equipo de jQuery también sugiere que esta función ya no se usa.

3
Community 23 may. 2017 a las 11:56

Verifique http://api.jquery.com/live/

"El método .live () puede afectar elementos que aún no se han agregado al DOM mediante el uso de la delegación de eventos [...]"

1
Giuseppe Romagnuolo 1 jun. 2011 a las 10:57

Supongo que necesitas jQuery's live ():

http://api.jquery.com/live/

1
Evgeny Shadchnev 1 jun. 2011 a las 10:58