Forum-webmaster
Technique - programmation => Javascript / DOM / Ajax => Message commencé par: hybrid59 le le 10-10-2010 a 23:35:26

Titre: Problème intéraction plugins jquery
Posté par: hybrid59 le le 10-10-2010 a 23:35:26

Bonjour à tous,

J'ai un problème d'interaction entre 3 plugins jquery, en changeant l'ordre d'appel de mes fonctions j'ai sois 1 ou 2 plugins qui marche.

Je connais quasiment rien en javascript, je me contente d'utiliser des plugins.

Y a il des solutions pour éviter les problèmes d'interactions ?
Merci d'avance pour vos réponse.

Titre: Re:Problème intéraction plugins jquery
Posté par: wd-creation le le 11-10-2010 a 09:15:49

Bonjour,
Normalement non pas de problème d'interaction si tes 3 fonctions tourne sur jQuery.
De tels conflits apparaissent généralement lorsque l'on essai d'utiliser 2 framework diffèrent comme : jQuery + Scriptaculous.
Avez vous essayer d'ajouter une fonction .stop() a tous vos effet?
Pourriez vous indiquez plus précisément votre problème?

Cordialement wd-creation

Création de site internet : www.wd-creation.fr

Titre: Re:Problème intéraction plugins jquery
Posté par: hybrid59 le le 11-10-2010 a 12:32:22

Merci pour votre réponse,
Vous êtes sur la bonne piste, car j’ai bien un Scriptaculous + jquery

Dans le détail j’ai installé une lightbox se qui donne :

Code:

<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>

Un plugins qui cache et fait apparaitre un onglet qui donne :

Code:

<script type="text/javascript" src="script/slider.js"></script>

Puis un dernier pour faire défiler le contenu de ma page qui donne :

Code:

<script type="text/javascript" language="javascript" src="script/jquery.pack.js"></script><!--Importing jquery pack--><script type="text/javascript" language="javascript" src="script/scrollto.js"></script><!--Importing scrollto plugin for jquery pack--><script language="javascript" type="text/javascript">//<![CDATA[
basepage = '';
jQuery(function($) {
   
   $('#gallery .zoom').css({display:'block',opacity:0});


Le problème et que sois la ligthbox et le défilement de contenu marche et pas l'onglet cacher, sois uniquement l'onglet cacher et pas le reste.Selon l'ordre d'appels des fonctions.

Titre: Re:Problème intéraction plugins jquery
Posté par: Pad le le 11-10-2010 a 14:40:58

tu utilises 2 biblio : scriptaculous et jquery, ce qui peut poser des problèmes de compatibilité... pour régler ce soucis : http://api.jquery.com/jQuery.noConflict/ (http://api.jquery.com/jQuery.noConflict/)

Titre: Re:Problème intéraction plugins jquery
Posté par: hybrid59 le le 11-10-2010 a 21:25:46

Merci Pad,

Apparemment c 'est se qu'il me faut mais j'arrive pas à le mettre en place avec mon code.

J'ai fait comme ça:

Code:


<!-----------------Lightbox---------------------------->
<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>

<!----------------- onglet slider---------------------------->
<script type="text/javascript" src="script/slider.js"></script>

<!----------------- contenu slider---------------------------->
<script type="text/javascript" language="javascript" src="script/jquery.pack.js"></script>
<script type="text/javascript" language="javascript" src="script/scrollto.js"></script>
<script language="javascript" type="text/javascript">
jQuery.noConflict()
basepage = '';
jQuery(function($) {
   
   $('#gallery .zoom').css({display:'block',opacity:0});
   
   $('a.scrollto').click(function()
   {
      var target = $(this.hash);
      target = target.size() && target || $("[name=" + this.hash.slice(1) +']');
      if (target.size())
      {
         target.ScrollTo(600);
         return false;
      }   
   });   
   
});

</script>


Comme ça le "onglet slide" et "contenu slider" fonctionne ( c 'est un progrès il n'avait jamais fonctionner à deux) mais la lightbox ne marche plus.

Pouvez vous m'aider SVP ?

Titre: Re:Problème intéraction plugins jquery
Posté par: Krash le le 13-10-2010 a 20:11:31

Bonsoir,

jQuery.noConflict() ne suffis pas à régler le problème, d'ailleurs il manque un point virgule à la fin.

Le problème vient de la fonction $ qui est utilisée par jquery et script aculo.

il faut donc procéder de la manière suivante.
Commencer par le no conflict jquery :
$j = jQuery.noConflict();

et remplacer tous les $ par $j sur les scripts utilisant jquery :

d'ailleurs je commencerais plutôt avec ceci :

$j(document).ready(function() {

ce qui donnerais donc
Citation:
$j(document).ready(function() {

$j('#gallery .zoom').css({display:'block',opacity:0});

$j('a.scrollto').click(function()
{
var target = $j(this.hash);
target = target.size() && target || $j("[name=" + this.hash.slice(1) +']');
if (target.size())
{
target.ScrollTo(600);
return false;
}
});

});


A voir si c'est la seule chose qui utilise jquery

Titre: Re:Problème intéraction plugins jquery
Posté par: hybrid59 le le 13-10-2010 a 21:15:36

Bonsoir,

Merci Krash pour votre réponse, j'essaie ça dé que j'ai le temps et vous tiens au courant.

Encore merci à tous pour votre aide.


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.