JQuery pour safari mobile: on () échoue

J’essaie de modifier certaines classes d’éléments DOM générés de manière dynamic pour une page Web mobile. Ma méthode habituelle, jQuery on() ne prend pas correctement les événements.

"delegate()" , ma sauvegarde ne fonctionne pas.

J’utilise la version de JQuery “http://code.jquery.com/jquery-1.7.min.js”

La solution a été d’append onclick = ” à l’élément div. Je ne sais pas pourquoi cela a fonctionné, mais ça a fonctionné. –

Au lieu d’utiliser le, ne pouvez-vous pas simplement écrire l’événement tel qu’il est?

Tel que:

 $(document).ready(function () { }); $(document).click(function () { }); $(document).keyup(function () { }); $(document).keydown(function () { }); 

?

N’oubliez pas d’append les événements aux objects une fois le DOM chargé. Si vous essayez d’utiliser un sélecteur jQuery en dehors d’un DOM prêt, vérifiez qu’il peut s’exécuter avant le chargement de l’élément réel et qu’il ne trouvera rien. Ce qui entraînera qu’aucun événement ne se produise.

Essayez l’événement en Live en tant que

 $(".element").live("click",function(){ alert("Clicked"); }); 

attacher un événement sur des éléments DOM générés dynamicment

Vous devez vous assurer que vous utilisez jQuery 1.7.1 avec jQuery Mobile 1.1.0 Final. Il est important d’utiliser la version 1.7.1 de jQuery, et non la version 1.7.2 actuellement disponible.

Utiliser on () à la place de tout fournit une expérience bien meilleure. En fait, presque tout le rest a été déconseillé.

Je me suis promené un peu à ce sujet sur un blog il y a quelques semaines.

http://zsprawl.com/iOS/2012/04/using-new-jquery-1-7-on-off-functions/