Bonjour à tous,
j'ai une application angularJS sur une page html et je me heurte à un problème.
J'ai un menu vertical avec des entrées cachés par un ng-show. Si j'appuie dessus j'ai les entrées qui s'affichent et des données qui apparaissent sur le site.
J'ai également un autre script jQuery qui permet d'animer le menu avec des waypoint il apparaît en surbrillance suivant où on est sur le site.

Mais voila, si j'appuie sur le bouton les nouveaux menus ne sont pas pris en compte par les animations. Et si je réduit ma fenêtre de navigateur pof d'un coup les animations sont prises.
Du coup je ne comprends pas comment la vue est mise à jour que quand je redimensionne la fenêtre. Y a t'il un moyen de le faire manuellement ?

ps: j'ai essayé $scope.$apply(); dans mon agularjs mais ca ne marche pas.

Voici mon code de mon script angularJS:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
$scope.showNewTheme = function() {
	$scope.background = "#D7D7D7";
	$scope.showNewTheme = true;
	$scope.$apply();
}
celui de mon html :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<li>
	<a class="target-section1 current scroll" href="#section1" title="Menu1">Menu1</a>
</li><li class="spacer"></li>
<li>
	<a class="target-section2 scroll" href="#section2" title="Menu2">Menu2</a>
</li><li class="spacer"></li>
<li>
	<a class="target-section3 scroll" href="#section3" title="Menu3">Menu3</a>
</li><li class="spacer"></li>
<li ng-show="showNewTheme ">
	<a class="target-section4 scroll" href="#section4" title="Menu4">Menu4</a>
	<ul class="vertical_sous_menu">
		<li><a class="target-section4-1 scroll" href="#section4-1" title="Menu41" >Menu41</a></li>
	</ul>
</li>

et celui de mon jQuery :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$("#main section").waypoint( function( direction ) {
    if( direction === 'down' ) {
        change( $( this ) );
    }
	}, { offset: '1%' } ).waypoint( function( direction ) {
		if( direction === 'up' ) {
			change( $( this ) );
		}
	}, { offset: '-1%' } );
 
	function change($section){
		$('nav.menu a').removeClass('current');
		var section_courante = $section.attr('id');
		var section_courante2 = new String(section_courante);
		if(section_courante2.indexOf("-") != -1 ) {
			section_mere = section_courante2.substring(0,section_courante2.length-2);
			$('.target-'+section_mere).addClass('current');
		}
		$('.target-'+section_courante).addClass('current');
	}

Voila merci d'avance
Ben