11484 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'ai repris la gestion d'un site d'une société qui a été développé antérieurement par un tier. Ce site est en PHP/Javacript notamment un formulaire de calcul.
Je dois inclure ce formulaire vers un nouveau site Joomla.

Le problème, ce n'est pas tant d'intégrer le code dans Joomla, il existe des modules pour ça, mais je n'ai que très peu (voir aucune) de notion en JS. Je ne sais donc pas quelle partie du code copier vers le nouveau site. J'ai trifouillé dans les pages, mais je suis perdu.

J'aurais donc besoin d'une âme charitable pour m'aiguiller (je suis prêt à payer dans la limite du raisonnable).

Pour voir le formulaire sur le site : www.guillen.fr > Votre expertise > Testez

Merci par avance
Modifié par Hakunamatata67 (22 Jan 2020 - 13:31)
Administrateur
Bonjour,

la méthode bête et méchante c'est d'enlever les appels aux scripts 1 par 1 jusqu'à ce que ça ne fonctionne plus (j'ai prévenu…)

Pour au moins avoir des indices, les Devtools des navigateurs (F12) indiquent quel script gère quoi dans le DOM de la page.
Exemple dans Firefox avec un bouton, Inspecter ce bouton puis chercher le "cartouche" Event sur l'élément OU un parent, cliquer sur ce bouton gris pour savoir quel(s) événement(s) sont liés, quel fichier, quelle ligne. En cliquant sur le nom on peut avoir un détail de la fonction mais ici préféer cliquer plus à droite pour ouvrir le fichier dans le Débogueur.

upload/1579686415-39-js-devtools-1.png

Dans le débogueur, si le JS est minifié, il y a un bouton pour le déminifier :

upload/1579686434-39-js-devtools-2.png

Ça remplacera probablement pas l'appel à une personne plus expérimentée mais dès fois que…
Merci, j'ai donc trouvé ce bout de code qui ouvre un popup vers le formulaire :
	/** POPIN **/
	$j('.popinBtn').on("click", function(e){
		e.preventDefault();
		var _id = $j(this).attr('data-id');
		$j('body').addClass('blocantiscroll');
		$j('.popin#'+_id).addClass('visible');
		if($j('.popin#'+_id).hasClass('popinPage')){
			var _maxImg = $j('.popin#'+_id+' .image .img').length;
			if(_maxImg > 1){
				var _currentImg = 1;
				var _idImg = $j('.popin#'+_id+' .image').attr('data-id');
				
				$j('.popin#'+_id+' .image .img').fadeOut(0);
				$j('#'+_idImg+_currentImg).stop().fadeIn(0);

				timerImg = setInterval(function(){
					_currentImg += 1;
					if(_currentImg > _maxImg) _currentImg = 1;
					
					$j('.popin#'+_id+' .image .img').fadeOut(500);
					$j('#'+_idImg+_currentImg).delay(500).fadeIn(500);
				
				}, 3500);
			}
		}
	});
		
	$j('.popin .fermer').on("click", function(e) {
		e.preventDefault();
		$j('body').removeClass('blocantiscroll');
		$j('.popin').removeClass('visible');
		clearInterval(timerImg);
	});


Comment puis-je ouvrir le formulaire vers une onglet ou une fenêtre unique ?