Affichage des résultats 1 à 7 sur 7

Discussion: Conflit JQuery

  1. #1
    Membre régulier
    Avatar de RobertG
    Date d'inscription
    février 2007
    Localisation
    Saint-Félicien (Ardèche)
    Messages
    18 306
    Remerciements
    6
    Remercié 1 463 fois
    dans 1 438 messages

    Par défaut Conflit JQuery

    Bonjour à tous !

    Pour un site, j'ai adapté du code publié ici : http://www.sohtanaka.com/web-design/...fect-w-jquery/ (en attendant un plugin) dans le but d'afficher une image agrandie d'une vignette au passage de la souris.
    Ce code, appelé dans index.php du template, importe jquery-latest.js directement depuis le site code.jquery
    Tout fonctionne comme on peut le voir par exemple au bas de cette page de mon site de tests : http://www.fontanyl.info/index.php?o...mid=69&lang=fr
    Par contre, comme vous pouvez le constater, "Slideshow Pro", utilisant une version plus ancienne (1.3.2) de JQuery, dans un fichier du module, ne fonctionne plus : affichage vertical quand je le demande en horizontal, et pas de défilement.
    J'ai tenté de remplacer le code par la nouvelle version, d'utiliser directement jquery-latest, sans effet. Si je neutralise l'appel à jquery-latest pour les vignettes, Slideshow Pro recommence à fonctionner, mais plus les vignettes, et si j'essaie de faire fonctionner le hover sur celles-ci avec la version JQuery utilisée par Slideshow Pro, il ne se passe rien...
    Bref, étant tout à fait novice dans ce domaine, je patauge lamentablement et je fais donc appel à vos lumières !
    Je vous remercie d'avance de l'aide que vous pourrez m'apporter.
    Robert
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

  2. #2
    Membre régulier
    Avatar de jisse03
    Date d'inscription
    mars 2009
    Localisation
    France, La Rochelle
    Messages
    32 123
    Remerciements
    35
    Remercié 3 016 fois
    dans 2 974 messages

    Par défaut

    Bonjour,

    JQuery et Mootools ont le même problème, de très grosses incompatibilités entre versions. Et pour peu que 2 instances soit d eJQuery, soit des Mootools soient chargées, les conflits commencent, même en tentant d'utiliser le mode noconflict.

    Seule solution, modifier tout ce qui utilise du JQuery pou rutiliser la même version, mais ça impose de suivre la syntaxe de chaque module ou composant l'utilisant et d'y appliquer de multiples corrections. Se méfier en particulier du raccourci $ d'appel à une instance de classe, qui a tout ce qu'il faut pour instancier la mauvaise version.
    Pas de demande de support par MP. Support francophone hwdMediaShare, Community Builder, documentations composants et templates : http://support.lab-project.net/discussions
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

  3. #3
    Membre régulier
    Avatar de RobertG
    Date d'inscription
    février 2007
    Localisation
    Saint-Félicien (Ardèche)
    Messages
    18 306
    Remerciements
    6
    Remercié 1 463 fois
    dans 1 438 messages

    Par défaut

    Merci de ta réponse, jisse03 !
    Le plus curieux dans l'histoire, c'est que je viens de faire utiliser à mon effet "hover" sur les vignettes, le fichier jquery.js de Slideshow Pro, au lieu de jquery-latest, et cet effet fonctionne, à la seule condition que Slideshow Pro soit désactivé.
    On avance donc !
    Par contre, même avec cette modification, Slideshow Pro refuse de fonctionner dès que j'active l'appel aux fonctions JQuery + un fichier JS pour les vignettes ! Pire, lorsque j'active Slideshow Pro, l'effet sur les vignettes disparaît, que je charge ou pas JQuery pour le slideshow...
    Le fichier qui gère l'effet hover sur les vignettes ne semble pourtant pas extraordinaire :
    Code:
    $(document).ready(function(){
    
    //Larger thumbnail preview 
    
    $("div.rollthumb").hover(function() {
    	$(this).css({'z-index' : '3100'});
    	$(this).find('img').addClass("hover").stop()
    		.animate({
    			marginTop: '-60%', 
    			marginLeft: '-60%', 
    			top: '50%', 
    			left: '50%', 
    			width: '200%', 
    			height: '200%',
    			padding: '20px' 
    		}, 200);
    	
    	} , function() {
    	$(this).css({'z-index' : '0'});
    	$(this).find('img').removeClass("hover").stop()
    		.animate({
    			marginTop: '0', 
    			marginLeft: '0',
    			top: '0', 
    			left: '0', 
    			width: '100%', 
    			height: '100%', 
    			padding: '5px'
    		}, 400);
    });
    
    //Swap Image on Click
    	$("div.rollthumb img").click(function() {
    		
    		var mainImage = $(this).attr("href"); //Find Image Name
    		$("#main_view img").attr({ src: mainImage });
    		return false;		
    	});
     
    });
    Donc c'est soit l'un soit l'autre ! d'autant que je n'ai trouvé aucun équivalent à Slideshow Pro pour avoir un défilement automatique d'images en vertical.
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

  4. #4
    Membre régulier
    Avatar de jisse03
    Date d'inscription
    mars 2009
    Localisation
    France, La Rochelle
    Messages
    32 123
    Remerciements
    35
    Remercié 3 016 fois
    dans 2 974 messages

    Par défaut

    le problème vient de
    Code:
    $(document).ready(function()
    qui est un nom de fonction flou.
    Ce problème est documenté dans les docs JQuery et un work around Joomla est proposé ICI. Essaies, si ça se trouve, ça pourra solutionner le problème
    Pas de demande de support par MP. Support francophone hwdMediaShare, Community Builder, documentations composants et templates : http://support.lab-project.net/discussions
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

  5. #5
    Membre régulier
    Avatar de RobertG
    Date d'inscription
    février 2007
    Localisation
    Saint-Félicien (Ardèche)
    Messages
    18 306
    Remerciements
    6
    Remercié 1 463 fois
    dans 1 438 messages

    Par défaut

    OK, mais si j'active jQuery.Noconflict dans l'entête du fichier index.php du template (en ayant désactivé Slideshow Pro), après l'appel à jQuery, l'effet hover sur les vignettes ne fonctionne plus...

    Le problème se situe plus dans Slideshow Pro que dans le code que j'ai cité, puisque ce code fonctionne avec la modification de la ligne "$(document).ready(function()" par "jQuery(document).ready(function(){", mais ça ne change rien au conflit.
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

  6. #6
    Membre régulier
    Avatar de jisse03
    Date d'inscription
    mars 2009
    Localisation
    France, La Rochelle
    Messages
    32 123
    Remerciements
    35
    Remercié 3 016 fois
    dans 2 974 messages

    Par défaut

    effectivement, ça semble un vrai conflit de voisinage entre SlideshowPro et le reste de la planète JQuery.
    Pas de demande de support par MP. Support francophone hwdMediaShare, Community Builder, documentations composants et templates : http://support.lab-project.net/discussions
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

  7. #7
    Membre régulier
    Avatar de RobertG
    Date d'inscription
    février 2007
    Localisation
    Saint-Félicien (Ardèche)
    Messages
    18 306
    Remerciements
    6
    Remercié 1 463 fois
    dans 1 438 messages

    Par défaut

    Par contre, du même auteur... horizontal slideshow ne provoque pas de conflit, et malgré son nom, permet d'afficher en vertical !!!
    Je continue mes tests, mais j'aurais bien aimé comprendre la raison du conflit !
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide). MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info hébergés chez PHPNET - +sites gérés chez 1and1 et OVH - Site pro : www.robertg-conseil.fr

Discussions similaires

  1. tuto Jquery
    Par opware2000 dans le forum JQuery
    Réponses: 3
    Dernier message: 14/06/2011, 06h58
  2. [Joomla! 1.5] Proposition de résolution du conflit jQuery Mootools avec Jumi
    Par ghazal dans le forum Mootools
    Réponses: 14
    Dernier message: 28/10/2010, 23h34
  3. [Problème] Conflit Jquery
    Par laurentmartin1984 dans le forum Questions - réponses
    Réponses: 4
    Dernier message: 22/10/2010, 22h13
  4. [Problème] Jquery conflit
    Par laurentmartin1984 dans le forum Gestion des plugins
    Réponses: 0
    Dernier message: 16/01/2010, 19h10
  5. [Problème] Conflit Mootools et jQuery ?
    Par bensoltane dans le forum Gestion des templates, design et CSS
    Réponses: 7
    Dernier message: 18/12/2008, 20h23

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •