J'utilise le code jquery suivant pour afficher un bouton de suppression contextuelle uniquement pour les lignes de table que nous survolons avec notre souris. Cela fonctionne mais pas pour les lignes qui ont été ajoutées avec js / ajax à la volée ...
Existe-t-il un moyen de faire fonctionner cela avec des événements en direct?
$("table tr").hover(
function () {},
function () {}
);
jquery
live
jquery-1.4
Jorre
la source
la source
live
: api.jquery.com/live.live
, il est conseillé d'utiliser à la.on
place. "Depuis jQuery 1.7, la méthode .live () est obsolète. Utilisez .on () pour attacher des gestionnaires d'événements."http://api.jquery.com/live/
la source
.live
est obsolète maintenant, voir la réponse d'André pour la méthode de remplacement maintenant.mouseover
etmouseout
ici provoquera le déclenchement continu du code lorsque l'utilisateur déplace la souris à l'intérieur de l'élément. Je pensemouseenter
et je suismouseleave
plus approprié car il ne tirera qu'une fois à l'entrée..live()
est obsolète depuis jQuery 1.7Utilisez à la
.on()
place et spécifiez un sélecteur descendanthttp://api.jquery.com/on/
la source
Depuis jQuery 1.4.1, l'événement de survol fonctionne avec
live()
. Il se lie simplement aux événements mouseenter et mouseleave, ce que vous pouvez également faire avec les versions antérieures à 1.4.1:Cela nécessite deux liaisons mais fonctionne tout aussi bien.
la source
Ce code fonctionne:
la source
AVERTISSEMENT: il y a une pénalité de performances significative avec la version live du survol. C'est particulièrement visible sur une grande page sur IE8.
Je travaille sur un projet où nous chargeons des menus multi-niveaux avec AJAX (nous avons nos raisons :). Quoi qu'il en soit, j'ai utilisé la méthode en direct pour le survol qui fonctionnait très bien sur Chrome (IE9 a bien fonctionné, mais pas génial). Cependant, dans IE8, non seulement cela ralentissait les menus (vous deviez survoler pendant quelques secondes avant qu'il ne tombe), mais tout sur la page était extrêmement lent, y compris le défilement et même la vérification de simples cases à cocher.
La liaison des événements directement après leur chargement a donné des performances adéquates.
la source