Je dois lier l'événement js sur un élément après l'avoir affiché en changeant une variable $ scope à l'aide de ng-show.
Après avoir changé la portée je lance le script JS mais le Js est plus rapide qu'angulaire qu'il a manqué de trouver un div pas encore montré par ng-show.
Voici un plunker pour un échantillon de code à ce problème. La solution que je trouve pour ce genre de problème est de faire le code JS dans un setTimeout mais je besoin d'une solution propre: https://plnkr.co/edit/iYDs552yCyd3R7ivgD84?p=preview
$scope.start = function(){
$scope.showMap=true;
setTimeout(function(){
jsFunc();
},1000);
}
vous aurez besoin d'ajouter une montre sur la variable scope: https://www.sitepoint.com/mastering-watch-angularjs/ –
Comme vous pouvez le voir dans plunker, je l'édite juste comme vous l'avez dit, mais n'a pas résolu le problème, la fonction de surveillance est appelée un peu plus tôt que les changements dans la dom faite par angularjs – SWahi