il y a des plugins tels que flowplayer overlay qui demande de mettre un attribut "rel" à l'élément HTML pour le faire déclencher certains événements ... le problème est, quand je crée dynamiquement des éléments qui ont cet attribut rel, ils ne seront pas déclencher ... quelle est la solution pour cela!?les éléments HTML ajoutés dynamiquement ne seront pas affectés par les plugins!
Répondre
Modifiez le plugin afin qu'il utilise live()
pour gérer les événements.
Généralement, il existe la fonction jQuery live() pour résoudre exactement ce type de problème.
Vous devrez changer le plugin pour utiliser live()
, ou exécuter leur fonction d'initialisation à chaque fois que du nouveau contenu est ajouté. Cette dernière approche peut être très gourmande en ressources du côté client et n'est pas très propre, mais si le nombre d'éléments en question n'est pas trop important, cela peut souvent être le moyen le plus simple.
Vous devez utiliser la méthode live()
pour déclencher des événements pour les éléments créés dynamiquement.
Exemple:
$('selector').live('click', function(){
// your code .........................
});
Depuis jQuery, vous pouvez également 1.4.2 utiliser .delegate()
:
Description: Attachez un gestionnaire à un ou plusieurs événements pour tous les éléments qui correspondent à la sélecteur, maintenant ou dans le futur, basé sur un ensemble spécifique d'éléments racine.
L'utilisation du délégué peut parfois donner lieu à moins de code et plus compréhensible que .live()
.
- 1. Supprimer les éléments ajoutés dynamiquement
- 2. Capybara ne reconnaît pas les éléments DOM ajoutés dynamiquement?
- 3. Les images ne seront pas actualisées dynamiquement
- 4. Les éléments HTML dynamiquement ajoutés ne peuvent pas être trouvés à l'aide de jQuery
- 5. Puis-je ajouter div avant les éléments qui seront ajoutés dynamiquement dans le futur?
- 6. Les éléments ajoutés avec appendTo() ne sont pas immédiatement disponibles
- 7. généré dynamiquement Les éléments ne sont pas ajoutés correctement dans le document dans IE
- 8. jQuery cliquez sur les éléments ajoutés
- 9. JavaScript dynamiquement ajouté ne trouvant pas les champs ajoutés dynamiquement dans IE
- 10. IE ne soumet pas; éléments de formulaire ajoutés dynamiquement; est-ce un bug IE?
- 11. WriteComponentResFile n'inclut pas les composants ajoutés dynamiquement à TTabSheet
- 12. Masquer les colonnes/champs ajoutés dynamiquement
- 13. ne peut pas installer les rails plugins
- 14. py2app: comment inclure les modules qui seront chargés par __import__?
- 15. Les plugins ne sont pas correctement installés
- 16. Basculé vers ASP.NET 3.5, DropDownList ne se souvient pas des éléments ajoutés dynamiquement
- 17. jQuery - les événements ne se déclenchent pas pour les éléments d'onglet créés dynamiquement
- 18. Lorsque GridPanel n'affiche pas uniquement les éléments ajoutés
- 19. xsltproc ne sélectionne pas les éléments par leur nom
- 20. Les styles CSS ne sont pas appliqués aux éléments ajoutés à l'arborescence des composants JavaFX
- 21. Afficher les éléments ajoutés dans Visual Studio
- 22. Linq to SQL - Les paramètres ne sont pas affectés correctement/les doublons
- 23. Comment capturer des événements mouseover sur des éléments HTML d'entrée ajoutés dynamiquement à l'aide de jQuery?
- 24. Les applications XBAP ne seront pas téléchargées: l'opération a expiré?
- 25. Les éléments enfants dans div ne seront pas fadeTo() dans IE
- 26. Mise en forme des éléments enfants StackPanel dynamiquement ajoutés
- 27. Les éléments obsolètes seront-ils supprimés des futurs navigateurs?
- 28. WebView ne charge pas les éléments correctement
- 29. Les images dans la grille ne seront pas rendues
- 30. Les propriétés ne seront pas sérialisées dans le fichier .designer.cs