Execution script dans une page ajax mootools

Fermé
gaetgaet - 27 sept. 2009 à 10:56
 gaetgaet - 28 sept. 2009 à 11:09
Bonjour à tous

J'ai un problème et pour mieux comprendre, je vais tenté une courte explication sur ce que je cherche a faire.

L'explication
Je travaille actuellement sur le projet "Diz-shop", pour le module boutique, nous proposons 2 type d'affichage pour la liste d'article. Soit un liste, soit un descriptif plus approfondie. Pour ce faire, j'ai installer 2bouton (visuel et liste) et lorsque le visiteur clique dessus sa lance une requête ajax que j'ai conçu grâce à mootools.


Le problème

Ma requete ajax marche parfaitement, mais le script qui est contenu dans ma nouvelle page, n'est pas charger dans sa totalité. J'ai mi un alert('demo'); dans ma fonction domready. Cependant, il y a que lui qui fonctionne car (comme on peu le voir dans la vidéo) l'effet et le chargement ajax sur le bouton "Visuel" est désactivé et l'ajout au panier (oui lui aussi est en ajax) ne fonctionne pas.

http://stooby-web.net/doc/video/fofo/ajax_mootools_pb_execution_js.avi <= Cliquez ici pour télécharger la vidéo du problème

Les question:
Je sais que c'est une question récurant mais d'habitude je charge que des réponse au formulaire, cette fois j'ai décidé de modernisé un peu tout sa en affichant la page complète mais comment fait-on pour que mon script soit interprété entièrement? j'utilise "evalScripts: true" dans ma requête sa ne devrait-il pas être suffisent ou alors j'ai mal compris sa fonctionnalité?

Quelque source:
Requete Ajax:
//On appelle la requete AJAX
	var req = new Request({method: 'get',
			url: lien,
			evalScripts: true,
			onSuccess: function(response) { 
					(function(){ 
					//On ajoute notre nouveau contenu
					div_ajax.set('html',response); 
					//On suprime notre Box de chargement
					CreateBox.destroy();
				}).delay(1900, div_ajax); // On retarde l'affichage pour que sa soit un minimum cohérent avec notre effet morph (pas présent dans ce bout de code)
				}
				}).send();



Exemple de script à exécuté:
<script type="text/javascript">  window.addEvent('domready',function() 									 
        {	
		 	alert("demo");
            $('mode_visu').addEvent('click', function(e){	
                e.stop();
                RequestAJAX('mode_visu','boutique-style-gamer-liste-article-ajax-visuel.html');  	
            });	
            
            var Fx2 = new Fx.Tween($('img_visu'), { property: 'opacity',
                                                      duration: 300,
                                                      transition: Fx.Transitions.Sine.easeInOut,
                                                      link:'chain'
                                                    });
            $('img_visu').addEvents({
                'mouseover': function(){
                    Fx2.start(1,0);
                    Fx2.start(0,1);
                    (function(){ $('img_visu').src='templates/v1/images/boutique/liste.png' }).delay(300);
                },
                'mouseleave': function(){
                    Fx2.start(1,0);
                    Fx2.start(0,1);
                    (function(){ $('img_visu').src='templates/v1/images/boutique/liste-disabled.png' }).delay(300);
                }
            });
            
        });
        </script>



Merci d'avance pour tout ceux qui on une idée pour résoudre mon problème
A voir également:

1 réponse

Personne :(
0