|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : janvier 2005 Messages : 157 ![]() |
Bonjour à tous.
Dans ma page, j'ai une div #list qui contient une liste de div de classe .call. Des filtres permettent à l'internaute de modifier cette liste de div dynamiquement. Pour une autre fonctionnalité, j'ai associé à toutes les div de la classe .call un écouteur d'événements. Je l'ai fait avec jQuery de la manière suivante : Code :
J'aimerais donc pouvoir l'associer à toute la classe .call dès que le DOM est modifié à l'intérieur de #list. Est-ce possible ? Si oui, comment ? (De préférence avec Vanilla JS et/ou jQuery) Merci. |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() |
si c'est comme le getElementsByClassName en js, il doit te retourner un tableau contenant tous les éléments ayant la classe demandée.
donc, pour ajouter un onclick à une div, je pense que tu devrais faire une boucle qui ajoute cet évènement à chaque div du tableau je n'ai jamais essayé ceci avec jQuery, donc désolé si cela ne marche pas
__________________
(marquer un post résolu si vous êtes satisfait de la réponse le chat caramail de retour ? :/ http://www.tchats.net/beta.php les projets web en cours sont sur : https://github.com/rotrevrep |
|
00
|
|
|
#3 | ||||
|
Membre actif
![]() Inscription : juin 2004 Messages : 152 ![]() |
Selon la version de jquery, il existe plusieurs possibilités pour répondre à tes besoins :
Code :
De cette façon, même les éléments ajoutés dynamiquement une fois que le DOM est chargé, interagissent... Cela donnerait dans ton cas si tu utilises jquery 1.3+ : Code :
|
||||
|
|
00
|
|
|
#4 | ||
|
Membre régulier
![]() Inscription : janvier 2005 Messages : 157 ![]() |
Merci rotrevrep pour ta réponse. Je crains cependant que tu n'aies pas saisi mon problème : l'extrait de script que j'ai publié fonctionne parfaitement. Et il a même l'intérêt de mieux fonctionner que la méthode getElementsByClassName qui, elle, n'est pas disponible sur des navigateurs comme IE7 ou Safari 3.
Merci BaBeuH, également, pour cette solution ! Concernant ma version de jQuery, j'inclus dans mon <head> le chemin vers la librairie maintenue par Google (http://ajax.googleapis.com/ajax/libs.../jquery.min.js), donc je dois être à la 1.7+. J'ai essayé le code suivant : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com