web-dev-qa-db-fra.com

jQuery - comment utiliser la méthode "on ()" au lieu de "live ()"?

J'ai utilisé live() pour les pages et les cadres générés. Mais dans jQuery 1.9 Cette fonction est obsolète et ne fonctionne pas.

J'utilise on() au lieu de live() mais cette méthode fonctionne une seule fois et ne fonctionne pas dans les frames.

Mon code ressemble à ceci:

  $("#element").live('click',function(){
    $("#my").html(result);
   });

Quelle est la solution?

26
Morteza
$('body').on('click', '#element', function(){
    $("#my").html(result);
});

Le sélecteur d'élément cliqué est maintenant passé à travers les paramètres de la fonction .on(), et le sélecteur précédent doit être remplacé par le sélecteur parent le plus proche, de préférence par un ID. Si vous ne savez pas quel sélecteur parent utiliser, body fonctionne aussi, mais est moins efficace.

voir jQuery 1.9 .live () n'est pas une fonction sur la façon de migrer le code existant.

72
Samuel Liew