webleads-tracker

Insertion de Jquery en ftp et appel dans un template

Manuel [Medialibs]
Avatar
Théoriquement il n'y a rien d'extraordinaire là dessus. On place notre librairie jquery dans l'espace FTP, puis on fait appel dans un template : le plus souvent le mainPage.html

On se retrouve par exemple avec la sémantique suivante :

Notre balise :

<head>


Différents blocs :

 
   <mx:bloc id="header">
      <mx:bloc id="title"><title><mx:text id="title" /></title>
      </mx:bloc id="title">
      ....
   </mx:bloc id="header">
 


Puis après la possibilité d'appeler différents scripts, notamment notre fameuse librairie jquery :

   
<link rel="stylesheet" type="text/css" href="/scripts/shadowbox.css" />
<script type="text/javascript" src="/common_scripts/nav.js"></script>
<script type="text/javascript" src="/images/scripts/js/jquery-1.3.2.min.js"></script>
 


Puis la fin de la balise :

</head>


=> Ce positionnement fonctionne mais si e-majine a besoin de charger ses propres plugins utilisant jQuery alors un second appel de jQuery est effectué après celui d'e-majine. Ce qui réinitialise l'ensemble des plugins : d'où certains problèmes de chargement.

Un exemple : c'est le cas quand on utilise l'effet lightbox (galerie avancée d'images) couplé avec notre appel jQuery dans la balise "head" ou dans le "body" : Incompatibilité, l'effet lightbox ne se déploie plus.

=> Si vous devez inclure la librairie jQuery dans votre site, il faudra faire appel avant la balise "scripts" :

<mx:bloc id="script"><script mxAttribut="src:src;type:type"></script></mx:bloc id="script">
Formateur web [Medialibs]

Nicolas
Merci de l'info Manu
Nicolas Ménard [Medialibs]

Célia Dehé
Bonjour,

J'aurais voulu avoir quelques précisions à propos d'e-majine et du javascript en général...

Comment se passe l'appel jQuery sous e-majine ? jQuery est toujours appelé ? Ou il est appelé uniquement s'il y a l'effet lightbox qui est appliqué ?

Parce s'il est toujours appelé, il est inutile de l'appeler une seconde fois.

Seconde question, e-majine utilise-t-il d'autres frameworks javascript que jQuery ?


Merci d'avance pour vos réponses :)
Ecom POP

Jérémie
Bonjour Célia,

E-majine ne demande le chargement d'une librairie javascript que si cela est nécessaire. Vous ne pouvez donc pas compter sur le fait que jquery sera toujours chargé par e-majine.
Il y a quelques temps, j'avais posté une suggestion d'évolution : Charger facilement des scripts javascript. Je pense que cette fonctionnalité pourrait être intéressante. Et vous ? Un vote ? ;-)

Bonne journée

Jérémie

Jing nan GARANGER
Bonjour,

Je profite de cette discussion pour demander des aides. Je suis en train d'intégrer un site izi-media, j'ai deux jquery qui sont intégrés dans le template "mainPage.html"

Voici le lien pour accéder sur le site :

http://www.jdecors.com/demo
Login : demo
mdp : demo

Le deuxième script "jquery_cycle" qui est utilisé pour une galerie qui se trouve sur la page "Qui sommes-nous", sous Firefox (version 3.6.8) PC, à la première affichage, à partir de la deuxième image, elles sont toutes minuscules. Mais une fois, je suis sur une autre page, par exemple "Contact", et je reviens sur la page "Qui sommes-nous", toutes les images sont correctement affichées.

Avez-vous une idée d'où vient ce problème ?

Moi, j'ai impression que ce script ne chargement pas la première fois.

Merci par avance.
MonaGraphic

Manuel [Medialibs]
Avatar
Bonjour Jing nan,

Quel est le comportement à atteindre pour cette galerie ? Il s'agirait de retrouver la taille originale je suppose ?

Car en me rendant sur ton site > page qui sommes nous, je retrouve bien les images en taille originale. Les miniatures n'apparaissent pas, même en effectuant la procédure indiquée >qui sommes nous > contact > qui sommes nous.

Peut-être un problème de cache ? J'ai pu tester cette fonctionnalité sur firefox 3.6.8 pc & chrome (dernière version).

N'hésite à effectuer des tests complémentaires (en effectuant une sauvegarde du site avant) :
- Passer à la dernière version de jquery 1.4.2.min.js (inclure avant la balise "mx:scripts")
- Modifier le placement des scripts de ton mainpage.html :

Sache que tu as deux scripts pour une même fonctionnalité, la version de production (.min) devrait suffire ;)

<!-- include jQuery library -->
<script type="text/javascript" src="/images/jquery_cycle/jquery.cycle.all.min.js"></script>
 
<!-- include Cycle plugin -->
<script type="text/javascript" src="/images/jquery_cycle/jquery.cycle.all.js"></script>
Formateur web [Medialibs]

Jing nan GARANGER
Bonjour Manuel,

Merci pour votre réponse. Effectivement j'ai deux scripts pour la même fonctionnalité. J'ai bien gardé le premier.

J'ai essayé de changer le placement des scripts, une fois mis avant la balise "scripts". La galerie ne fonctionne plus, toutes les images se trouvent l'une après l'autre. Donc j'ai laissé les scripts juste avant la fermeture de "head", et j'ai modifié la version de jquery. Ca fonctionne correctement maintenant.

Merci encore pour votre aide. Ce site va bientôt en ligne.

Bonne journée.
MonaGraphic

Jing nan GARANGER
Bonjour Manuel,

Une fois la version de jQuery a modifié, le script pour la page d'accueil ne fonctionne plus. Du coup, j'ai remis l'ancienne version. Et le problème est revenu comme avant pour la galerie de la page "Qui sommes-nous", à partir de la deuxième image, ça affiche la taille miniature. Mais ça n'arrive qu'à la première connexion. C'est étrange. Je ne pense pas c'est le problème de cache.

Cordialement.
MonaGraphic

Manuel [Medialibs]
Avatar
Salut Jing nan,

Aucun souci d'affichage de mon côté sur Firexox 3.6.9 / chrome / Windows Pro. Sur quel environnement travail tu ? Windows / MAC / Linux ?

N'hésite pas à vider le cache de tes navigateurs. Au besoin tu peux essayer une autre version de jQuery, si ce n'est pas la toute dernière, essai avec la version 1.3.2



Formateur web [Medialibs]

Manuel [Medialibs]
Avatar
Voici un appel conseillé de la librairie jQuery :

<!-- Appel de jQuery sur serveur de Google - Fall back local si necessaire -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script>!window.jQuery && document.write('<script src="/scripts/Jquery/jquery-1.5.min.js"><\/script>')</script>
<!-- Appel des propres plugins utilisés par e-majine -->
			<mx:bloc id="script"><script ></script></mx:bloc id="script">


L'appel à d'autres fichiers javascripts peut s'effectuer avant la fin de fermeture du body (pratique conseillé) ou avant la fin de la fermeture du head.

Exemple d'appel :

<script type="text/javascript" src="/scripts/slider/s3Slider.js"></script>
Formateur web [Medialibs]

Jean-Baptiste
Bonjour,

Je suis actuellement confronté à un problème concernant le chargement de JQuery. Je désire utiliser la toute dernière version de JQuery (1.8), mais malgrè tous mes efforts, la version utilisée reste celle de E-Majine (la vieille 1.4.4)

J'ai procédé comme indiqué, mais rien n'y fait...

Voici le morceau de code du head de ma page :


  <mx:bloc id="header">
      <mx:bloc id="title"><title><mx:text id="title" /></title></mx:bloc id="title">
      <mx:bloc id="meta"><meta  /></mx:bloc id="meta">
      <mx:bloc id="link"><link  /></mx:bloc id="link">
	<!-- Appel de jQuery sur serveur de Google - Fall back local si necessaire -->
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
	<script>!window.jQuery && document.write('<script src="/scripts/jquery-1.8.0.min.js"><\/script>')</script>

	<!-- Appel des propres plugins utilisés par e-majine -->
	<mx:bloc id="script"><script ></script></mx:bloc id="script">


  <script src="/scripts/tooggle.js" type="text/javascript"></script>
  <script src="/scripts/exposants.js" type="text/javascript"></script>
  
  <script src="/scripts/jquery.tools.min.js" type="text/javascript"></script>
  <!--<script src="/scripts/jquery.lightbox-emajine.js" type="text/javascript"></script>-->
  <script src="/scripts/jquery.select2.js" type="text/javascript"></script>
  <script src="/scripts/script_netconcept.js" type="text/javascript"></script>
	
    <mx:bloc id="other"><mx:text id="datas"/></mx:bloc id="other">
  </mx:bloc id="header">
 


Et pour connaitre la version de jquery utilisée, je passe par l'ardoise javascript de Firefox et j'execute : alert($().jquery);

Pouvez vous me dire comment procéder pour vraiment avoir une version plus récente de JQuery active ?

Par avance merci

Manuel [Medialibs]
Avatar
Bonjour Jean-baptiste,

Nous pouvons intervenir spécifiquement pour activer la dernière version de jQuery pour ce site. N'hésites pas à créer un ticket pour cela ;)

Merci,
bonne journée
Formateur web [Medialibs]

Jean-Baptiste
Vous voulez dire que la méthode précédemment décrite ne fonctionne pas en fait ?

Il serait peut-être intéressant de pouvoir choisir dans le webo la version de jquery à charger...