Comment faire de jQuery 1.7 .() hover?
Je vais avoir un problème avec créé dynamiquement des éléments sur l'état de pointage. Quand j'ai passez la souris sur les nouveaux élément html, il ne fonctionne pas.
Voici mon code HTML:
<button id="create">create new button</button>
<button class="hover">hover me</button>
<div></div>
jQuery:
var createBtn = $("#create");
createBtn.click(function() {
$('div').append('<button class="hover">new hover button</button');
return false;
});
$('.hover').hover(function() {
alert('you hovered the button!');
}, function() {
alert('you removed the hover from button!');
});
J'ai même essayé ce code:
$('.hover').on({
mouseenter : function() {
alert('you hovered the button!');
},
mouseleave : function() {
alert('you removed the hover from button!');
}
});
comme indiqué ici http://api.jquery.com/on/, mais toujours pas de chance.
Voici également démo: http://jsfiddle.net/BQ2FA/
peut-être que cela aidera sur on/off: stackoverflow.com/questions/11283341/...
OriginalL'auteur Lado Lomidze | 2012-07-18
Vous devez vous connecter pour publier un commentaire.
Ce n'est pas la bonne syntaxe.
L'utiliser pour écouter vos événements pour créer dynamiquement '.hover' éléments :
.on()
peut encore être un objet (comme l'OP est en train de faire) si vous voulez éviter d'avoir à appeler explicitement à plusieurs reprises. (Downvote pas le mien - cette réponse est encore correct).Il y a plusieurs solutions possibles, et je suis d'accord, il est possible de faire plus court, mais des OP d'appel ne pouvait pas être applicable de manière dynamique créée".placez les " éléments, c'est ce que j'ai corrigé.
Je sais, j'étais juste en évidence le fait que les OP ne pas avoir à changer à ce point - qu'ils peuvent simplement modifier l'initiale du sélecteur, et ajouter le
.hover
sélecteur en tant que deuxième argument après le mappage de noms d'événements et de gestionnaires d'événements. Ils n'ont pas à le changer 2 appels distincts à.on()
. (Le commentaire a été à l'avantage de l'OP, pas une critique de votre réponse).Oui, c'est vrai. Je ne vais pas modifier mon code comme c'est un détail et Esalija déjà donné cette variante, mais merci pour la précision : c'est bon pour moi aussi (pas seulement de l'OP) afin d'être avisé de l'autre syntaxes.
Ce qui a fonctionné pour moi. merci : )
OriginalL'auteur Denys Séguret
Vous utilisez
.on
pour la liaison directe, vous avez besoin de l'utiliser pour la délégation:http://jsfiddle.net/BQ2FA/2/
OriginalL'auteur Esailija