Diaporama simple avec JQuery, nouvelle version: jDiaporama !

Publié par Gui dans jQuery, Tutoriels

Facile

jQuery, css

téléchargez dès maintenant la toute dernière version de jDiaporama avec plein de nouveautés !

Vous avez été nombreux à commenter le tutoriel « Comment réaliser un diaporama simple avec JQuery« , alors le voici maintenant en version 2 !

J’ai essayé d’ajouter dans cette nouvelle version les différents manquements que vous souligniez dans le précédent tutoriel.

Voici donc les nouveautés de ce nouveau diaporama JQuery:

  • Nouvel aspect graphique
  • Contrôle du diaporama grâce aux touches directionnelles du clavier
  • Défilement automatique ou non
  • Gestion de la direction du diaporama (de gauche à droite ou inversement)
  • Pause par défaut possible
  • Arrêt du diaporama après un nombre défini de boucles
  • Affichage du titre
  • Affichage de la légende
  • Affichage d’un compteur (image actuelle sur nombre d’images)
  • Possibilité d’accéder à une image directement en cliquant sur les boutons ronds
  • Ajustement automatique en fonction de la taille des images du diaporama
  • Compatibilité sur tous les navigateurs

Préambule

Je ne vais pas revenir en détails sur la création de la partie HTML (celle-ci est n’a pas changé, c’est toujours aussi simple!), ni sur le CSS, mais me concentrer à vous expliquer le fonctionnement des nouveautés de cette version.

Si vous avez manqué le début, notamment sur la création d’un plugin pour JQuery, je vous invite à suivre le tutoriel original: Tutoriel: Réaliser un diaporama simple avec JQuery.

Déclaration des nouvelles options

var defaults = {
	auto: true, // Le diaporama est en mode automatique
	delay: 3, // La durée d'affichage est de 3 secondes
	animationSpeed: "normal", // La durée de transition est normale
	controls: true, // Les boutons de contrôle sont affichés par défaut
	keyboard: true, // La navigation au clavier est activée
	infos: true, // Les informations (légende, titre) sont affichées
	currentimage: true, // Le compteur d'image est affiché
	paused: false, // Le diaporama démarre automatiquement
	boucles: 0, // 0 = Illimité, le diapo ne s'arrêtera jamais
	sens: "right" // Le sens du défilement est vers la droite par défaut
	onrollover: true // Les infos ne s'affichent qu'au survol de la souris
};

Initialisation & variables

Nous allons voir ici dans un premier temps, comment initialiser notre script, en définissant quelques variables et en effectuant quelques actions.

Mais comme dit le proverbe, un joli code vaut mieux qu’un long discours !


// la variable diapo est un raccourci pour le diaporama courant
var diapo = $(this);
// Variable utilisé pour détecter la présence de la souris sur le diaporama
var mouseover = false;
// Orientation du défilement
var sens = options.sens;
var pause = false;
var width = 0;
var height = 0;
// Image par défaut (position 0)
var current_slide = 0;

// On encapsule notre liste (ul) dans un div avec une classe
diapo.wrap("<div class='jDiaporama'></div>");

var inter = ""; // Variable pour l'interval de temps

// Si le mode est défini sur "auto" et qu'il démarre automatiquement
if(options.auto && !options.paused)
// On lance le diaporama (défilement)
	inter = setInterval(function(){displayDiaporama(options)}, (options.delay*1000));

// On cache les autres images pour n'afficher que la première
$("li", diapo).hide();
// A noter une différence, maintenant on appelle une fonction init() *
// à la fin du fondu sur la première image.
$("li:first-child", diapo).addClass("active").fadeIn(options.animationSpeed, init);

// Pour chaque élément
$("li", diapo).each(function(){
	elt = $(this);

	// On calcule la position de l'image
	i = parseInt($("li", diapo).index($(this))+1);

	// On lui ajoute un ID avec la position
	$(this).attr("id", "jDiaporama_image_"+i);

	// Affichage de la légende si renseignée et activée
	if(options.infos)
	{
		// Y-a-t-il une description ? balise title
		var is_desc = ($("img", elt).attr("title") != "");
		// Y-a-t-il un titre? balise alt
		var is_title = ($("img", elt).attr("alt") != "");

        // On affiche ensuite ou non le titre et la description de l'image
		if(is_desc)
			elt.append("<p class='desc'>"+$("img", elt).attr("title")+"</p>");

		if(is_title)
			elt.append("<p class='title'>"+$("img", elt).attr("alt")+"</p>");

		// On affiche selon le paramètre choisi, le compteur d'image ou non
		if(options.currentimage)
			// On récupère ici la position de l'image courante (méthode index())
            // qu'on incrémente car la première position est 0.
			// Et on la compare au nombre d'images total
            // (nombre d'enfants (li) du diaporama)
			elt.append("<p class='count'>"+parseInt($("li", diapo).index(elt)+1)+"/"+diapo.children().length+"</p>");
	}
})

* Le script est maintenant initialisé par une fonction.

function init()
{
	// On récupère la taille de la première image du diaporama
	width = $("li:first-child img", diapo).width();
	height = $("li:first-child img", diapo).height(); // Sa hauteur

	// On ajuste le diaporama à la bonne taille
	// Ici la liste ul
	diapo.width(width);
	diapo.height(height);

	// Ici son parent .jDiaporama
	diapo.parent().width(width);
	diapo.parent().height(height);

	// Si les contrôles sont activés, on affiche les boutons ronds
	if(options.controls)
		diapo.siblings(".jDiaporama_status").show();
	// Si le diaporama est auto, mais en pause au début,
	// On lance l'évènement click sur le bouton "pause"
	if(options.auto && options.paused)
		$(".pause", diapo.siblings()).trigger("click");
	// On rend actif le premier bouton rond de la status bar
	$("#jDiaporama_bullet_"+(parseInt($("li", diapo).index($("li:first-child", diapo)))+1), diapo.siblings()).addClass("active");
}

A ce stade là, notre script est initialisé.

Il nous reste maintenant à définir :

  1. les actions utilisateurs pour les rollovers et l’affichage des informations
  2. les commandes clavier
  3. les différents contrôles du diaporama (suivant, précedent, pause …)
  4. la fonction de rotation d’image
  5. la fonction de rotation automatique

Informations & Rollovers

Par défaut, les informations ne s’affichent qu’au survol de la souris sur une image. On peut changer ce paramètre dans les options.

Il convient alors de détecter quand la souris est sur l’image courante. Pour cela nous utilisons les méthode JQuery mouseenter et mouseleave pour respectivement « Entrée de la souris dans la zone de l’image » et « sortie« .

Evenements de la souris

diapo.parent().mouseenter(function(){
	// On indique que la souris est bien au dessus de l'image
	mouseover = true;
	// On appelle la méthode qui affiche les infos
	// pour l'image courante
	displayInfos($("li.active", diapo), "show");
	// Si les contrôles sont activés, on affiche les boutons (flèches, pause)
	if(options.controls)
		diapo.siblings(".jDiaporama_controls").fadeIn();

}).mouseleave(function(){
	// La souris n'est plus au dessus de l'image
	mouseover = false;
	// On cache les infos
	displayInfos($("li.active", diapo), "hide");
	// Et les boutons
	if(options.controls)
		 diapo.siblings(".jDiaporama_controls").hide();
});

Grâce à ces deux méthodes, nous pouvons parfaitement gérer l’affichage des informations et des contrôles en fonction des évènements souris.

Méthode d’affichage

function displayInfos(elt, display)
{
	// Variables pour tester la présence des balises "title" et "alt"
	// Pour respectivement la description et le titre
	var is_desc = ($("img", elt).attr("title") != "");
	var is_title = ($("img", elt).attr("alt") != "");

	if(is_desc)
		if(display == "show")
			$(".desc", elt).slideDown("fast");
		else
			$(".desc", elt).slideUp("fast");
	if(is_title)
		if(display == "show")
			$(".title", elt).slideDown("fast");
		else
			$(".title", elt).slideUp("fast");
	if(options.currentimage)
		if(display == "show")
			$(".count", elt).slideDown("fast");
		else
			$(".count", elt).slideUp("fast");
}

Cette fonction s’occupe simplement de vérifier la présence des bonnes balises, pour n’afficher les informations que lorsqu’elles sont présentes. Ainsi on teste les attributs « title » et « alt » pour lancer l’animation d’affichage.

Le paramètre display est utilisé pour savoir s’il faut afficher ou cacher les informations.

Enfin, de la même manière, on n’affiche le compteur d’images que si celui-ci est activé dans les paramètres.

Commandes clavier

Nous utilisons ici une autre méthode JQuery: la fonction keydown qui permet de détecter la pression d’une touche du clavier.

Il suffit ensuite de repérer le code de la touche correspondant à la flèche gauche (37) et à la flèche droite (39). Après, nous allons réutiliser le fonctionnement du clic sur les boutons suivant et précédent (voir plus bas) pour passer à l’image suivante ou précédente (évitant ainsi de réécrire les actions).

// Si la navigation au clavier est activée
if(options.keyboard)
	$(document).keydown(function(event) {
		switch(event.keyCode){
			case 37 : // Flèche gauche
				// On appelle la fonction prev()
				prev();
			break;

			case 39 : // Flèche droite
				// On appelle la fonction next()
				next();
			break;
		}
	});

Boutons de contrôle

Nous allons détailler ici les différentes actions effectuées par les boutons de contrôle du diaporama.

Il y a pas mal de code alors accrochez-vous !

Il y a quatre étapes dans cette portion de code :

  1. Définition de la « status bar« , les boutons ronds qui permettent de suivre le défilement du diaporama.
  2. L’action du bouton précédent
  3. L’action du bouton suivant
  4. L’action du bouton lecture/pause

Status bar

// On ajoute le <div> qui contient les boutons ronds
// juste après la liste d'images
diapo.after("<div class='jDiaporama_status'></div>");

// Pour chaque image du diaporama
$("li", diapo).each(function(){

	// On calcule la position de l'image
	i = parseInt($("li", diapo).index($(this))+1);

	// On ajoute dans le <div> un lien vers cette même image
	$(".jDiaporama_status", diapo.parent()).append("<a id='jDiaporama_bullet_"+i+"' href='#'>Image "+i+"</a>");
})

// On calcule la taille que fait le <div> final avec les liens
// dedans pour pouvoir le placer de manière absolue
// centré en dessous du diaporama.
$(".jDiaporama_status", diapo.parent()).css("margin-left", -($(".jDiaporama_status", diapo.parent()).width()/2));

// On définit l'action du clic sur un lien de la status bar
$(".jDiaporama_status a", diapo.parent()).click(function(){
	// on appelle la méthode de rotation d'image avec
	// comme paramètre le lien courant
	nextImage(options, $(this));
	return false;
})

Ajout des boutons de contrôle

On ajoute les boutons de contrôle après le diaporama (<ul>). A noter qu’on n’ajoute le bouton play/pause uniquement si le mode auto est activé).

// Ajout du <div> .jDiaporama_controls
diapo.after("<div class='jDiaporama_controls'><a href='#' class='prev'>Prec.</a> " + ((options.auto)?"<a href='#' class='pause'>Pause</a>":"") + " <a href='#' class='next'>Suiv.</a></div>");

Action du bouton précédent


$(".prev", diapo.siblings()).click(function(){
	prev();
	// On annule l'action originelle (#) du lien
	return false;
});

function prev()
{
	// Si l'image courante n'est pas la première
	if(!$("li.active", diapo).is(":first-child"))
		// l'élément à afficher est l'image précédente
		elt =  $("li.active", diapo).prev();
	else
		// Sinon c'est la dernière
		elt =  $("li:last-child", diapo);

	// On appelle la méthode de rotation avec l'image à afficher
	nextImage(options, elt);

	// On définit le sens de défilement
	sens = "left";
}

Action du bouton suivant

La seule différence avec le bouton précédent est le sens de rotation.

$(".next", diapo.siblings()).click(function(){
	next();
	// On annule l'action originelle (#) du lien
	return false;
});

function next()
{
	// Si l'image courante n'est pas la dernière
	if(!$("li.active", diapo).is(":last-child"))
		// l'élément à afficher est l'image suivante
		elt =  $("li.active", diapo).next();
	else
		// Sinon c'est la première
		elt =  $("li:first-child", diapo);

	nextImage(options, elt);
	sens = "right";
}

Action du bouton lecture/pause

	$(".pause", diapo.siblings()).click(function(){
		// Si le diaporama est déjà en pause (a la classe "pause")
		if($(this).hasClass("pause"))
		{
			// On enlève cette classe et on met la classe "play"
			$(this).removeClass("pause").addClass("play");
			// On arrête le défilement automatique du diaporama
			clearInterval(inter);
			// On définit une variable globale "pause" à true
			pause = true;
		}
		// Sinon
		else
		{
			// On remet la classe "pause"
			$(this).removeClass("play").addClass("pause");
			// On relance le défilement automatique
			inter = setInterval(function(){displayDiaporama(options)}, (options.delay*1000));
			pause = false;
		}

		return false;
	});
}

Fonction de rotation d’image

C’est ici le plus gros du système. La méthode a un peu changé par rapport au précédent tutoriel.

En effet, avant cette fonction  ne s’occupait uniquement que d’afficher l’image suivante ou précédente selon le sens de rotation. Maintenant elle affiche une image définie (passée par paramètre) pour que l’on puisse afficher l’image souhaitée grâce à la « status bar ». C’est donc les boutons de contrôle qui définissent qu’il faut afficher l’image suivante ou précédente (comme vu précédemment).

// Le paramètre elt correspond à l'élément que l'on veut afficher
// Soit l'image suivante au clic sur les boutons suivant/précédent
// Soit le lien de la status bar
function nextImage(options, elt)
{
	// On stoppe le défilement automatique
	clearInterval(inter);

	// On cache l'image active et on lui retire sa classe
	$("li.active", diapo).fadeOut(options.animationSpeed).removeClass("active");

	// On fait de même pour les liens de la status bar
	$(".jDiaporama_status a", diapo.parent()).removeClass("active");

	// On récupère l'identifiant de l'élément (image ou lien status bar)
	id = elt.attr("id").split("_")[2];

	// On rend actif et on affiche l'image demandée
	$("li#jDiaporama_image_"+id, diapo).addClass("active").fadeIn(options.animationSpeed);
	// On ajoute la classe actif au bon bouton rond de la status bar
	$("#jDiaporama_bullet_"+id, diapo.siblings()).addClass("active");

	// Si les infos sont activées, le rollover aussi et qu'on est déjà sur le diaporama
	// au moment où on change d'image, alors on affiche les infos
	if(options.infos && mouseover && options.onrollover)
		displayInfos($("li.active", diapo), "show");
	// Sinon on les cache
	else if(!mouseover && options.onrollover)
		displayInfos($("li.active", diapo), "hide");

	// Si le diapo est en mode auto et n'est pas en pause
	if(!pause && options.auto)
	{
		// Si l'on est pas arrivé au bout du compteur de boucle ou que celui est ci est en mode infini (0)
		if(options.boucles == 0 || (options.boucles > 0 && (diapo.data("current_slide")/diapo.children().length) < options.boucles ))
			// On relance le défilement automatique
			inter = setInterval(function(){displayDiaporama(options)}, (options.delay*1000));
		else
			// Sinon on est arrivé à la fin et on enlève le bouton lecture/pause
			$(".pause", diapo.siblings()).remove();
	}
}

Fonction de défilement automatique

Voici la fonction qui est appelée à intervalle régulier et qui s’occupe de faire défiler les images automatiquement.

On utilise dans cette méthode, une autre fonction JQuery bien pratique, la fonction data, qui permet d’associer des variables à un objet JQuery. En l’occurence, nous allons nous en servir pour stocker la variable current_slide dans l’objet diapo (notre diaporama).

function displayDiaporama(options)
{
	// On incrémente le nombre d'images déjà affichées
	current_slide++;
	// On met à jour la variable pour le diaporama courant
	diapo.data("current_slide", current_slide);

	// Selon le sens de rotation, nous appelons la fonction
	// suivante ou précédente
	if(sens == "right")
		next();
	else
		prev();
}

Conclusion

Voilà ! Le script de la nouvelle version du diaporama simple avec JQuery est maintenant terminée !

Informations & téléchargements

Le script fonctionne parfaitement sur tous les navigateurs : IE (6,7 et 8), Firefox, Chrome et Safari.

A noter que l’utilisation de png transparent fait quelque peu ralentir le script sur IE7 seulement et que sur IE 6 des images au format gif ont été utilisées pour remplacer les PNG.

La démo est disponible ici.

Les fichiers sources : télécharger les fichiers sources de l’example.

Le projet jDiaporama sur jQuery.com: http://plugins.jquery.com/project/jDiaporama

165 commentaires

1 2 3 4 5 6 7
  1. Gui
  2. pauline

    Bonjour,

    Est-il possible de rendre plus lent le fondu entre deux images?
    Dans le fichier script.js animationSpeed est déjà à slow, peut-on le rendre plus lent? (Je ne parle pas du delay).

    Je vous remercie par avance.

    • Stan

      Pareil en slow ca va trop vite…

    • Stan

      En fait c’est tout simple !
      Il faut éditer le fichier code source de jquery.

      Dans mon cas jquery-1.7.1.js :
      dedans tu recherches => slow

      et tu tombes sur : speeds:{slow:600,fast:200,_default:400}

      tu remplaces par le tient : speeds:{lent:1500,slow:600,fast:200,_default:400}

      Voilà, :o)

  3. Miiidooo

    Bon travail mec Bravo,

    j’ai essayé de faire un test et ça marche bien sauf que quand je choisi d’autres image qui ont pas meme largeur et meme hauteur le diapo devien un peu bourdel il affiche chaque image a sa taille normal comment je peux faire pour fixer meme hauteur et meme largeur pour toutes les images?

  4. moiettoi

    Bonjour et merci pour ce beau travail, cependant il est impossible de baisser le délai:
    delay: 3, // La durée d’affichage est de 3 secondes
    Je l’ai mis à 10 secondes pour test et il reste sur moins de 3 sec.

    • Adeline

      Bonjour,
      J’ai le même problème, que je mette 3 ou 100 pour delay, la vitesse de défilement est la même…
      Avez-vous résolu le problème ?
      Sinon, super slideshow ! Merci beaucoup !

    • Adeline

      En relisant tous les commentaires, j’ai trouvé la réponse, il faut changer le delay dans script.js :)

  5. Benoît

    Bonjour Guillaume,

    J’ai un petit souci sur l’affichage du diaporama : lors du premier chargement de la page, les puces se calent à gauche, l’image à droite, et la suite de ma page sous les images. En ré-actualisant ma page, tout se cale comme voulu à l’origine.

    L’adresse du site en question : http://www.carteperformance.fr/CSS/ Et cela, sous FF, Chrome, IE et Opéra.

    Y-a-t’il un moyen pour « réserver » la zone pour le diaporama ?

    Merci en tout cas pour ton travail et ta disponibilité :)

    Benoît.

  6. Max

    Bonsoir,
    je cherche à mettre ce type de diaporama sur ma page d’accueil
    si je le mets en index.php ça ne marche plus du tout
    c’est normal ou faut modifier qqchose dans le .js ??

    Merci bcp
    Max

  7. jlava

    Bonsoir Guillaume,
    Super ton boulot ! Pour comprendre une peu j’ai essayé la 1ère version de jDiaporama, puis j’en suis à la 2ème, avec quelques questions :
    SIte : http://www.aufildanais.com/index1.php

    1 – j’ai un Pb de décalage entre les images et les boutons que je n’arrive pas à régler (j’ai mis une class= »diaporama1″ dans une balise ).
    Pb identique avec FF, IE ou Chrome.

    2 – sous FF je n’arrive pas a supprimer le cadre ombré.
    3 – Photos de base en « portrait ». Or le cadre ne s’adapte pas automatiquement en « paysage » avec dec photos de ce format.

    Des idées pour m’aider ?
    Merci d’avance.

    • Gui
      • GuillaumeS

        Bonjour,
        J’ai le même problème avec le cadre ombré sous FireFox.
        Je ne m’en sort pas, comment il faut faire pour le supprimé ?
        En CSS, ok, mais que faut t-il écrire, et où ?
        Sinon, tout va bien. Merci pour ce module bien sympathique.

        Cordialement.

    • Laurick

      Salut jlava,
      Pour ton point 1. Je suis moi aussi tombé sur le même bug de décalage. En fait, cela vient d’un style qui n’est pas dans la feuille dédiée style mais dans l’autre (page.css) et qui concerne la déclaration des UL par défaut. Ajoute ça dans ta feuille de style et c’est corrigé :

      ul{
      margin:0;
      padding:0;
      }

      @guillaume : Bravo, c’est du bon boulot et très bien expliqué pas à pas :)

  8. Loulou

    Bonjour Guillaume,

    J’utilise ta première version sur un site depuis un moment déjà, je redéveloppe un autre site et là j’ai un décalage au changement d’image, il me la charge en dessous avant de la mettre au bon endroit.
    Je ne comprends pas pourquoi ? As-tu une idée ?

    Merci d’avance
    Loulou

    • Gui
      • Loulou

        Je veux bien mais c’est un site protégé car pas encore sur la toile pour le moment, peux-tu me donner ton mail pour te l’envoyer en MP.

        Merci d’avance,
        Loulou

  9. Deborah Bulle

    Bonjour,
    Je viens de récupérer ces codes : un immense merci !
    Par contre j’ai un soucis, j’ai testé sur Chrome, FF, Opera et ça fonctionne très bien (j’ai lié cette nouvelle feuille de style à ma page html en plus de ma feuille de style de base), par contre sous IE8 ça cafouille totalement, et je ne comprends pas pourquoi (<== grosse novice).
    Quelqu'un pourrait me renseigner ?
    D'avance merci, et encore bon boulot !

  10. Déborah Bulle

    Bon en fait ça marche très bien sour IE, Opera, Chrome et c’est sous FireFox que ça fait n’importe quoi …
    J’ai mon style CSS établis, je veux intégrer mon diaporama dans une div et au lieu de se mettre à l’endroit demandé, il se fixe en haut à gauche de mon écran et aucun attribut de mon CSS ne s’affiche, alors que ça fonction très bien sous les autres navigateurs.
    Merci d’avance pour votre aide.

  11. Sam

    Bonjour tout le monde.
    Merci beaucoup pour ce tuto, c’est vraiment génial, mais si par hasard quelqu’un peut m’aider pour un petit soucis.
    j’explique brièvement:
    dans mon code html j’ai

    /* ici j’ai des liens de navigation */

    /* ici j’ai mon diaporama comme dans ce tuto */

    Le problème est dans mon code css, quand je mets
    aside et article en display:inline-block afin de les mettre cote à cote, mes textes de description des images s’affichent floux.

    je compte sur quelqu’un qui pourra m’aider.
    merci :-)

  12. Sam

    Bonjour tout le monde.
    Merci beaucoup pour ce tuto, c’est vraiment génial, mais si par hasard quelqu’un peut m’aider pour un petit soucis.
    j’explique brièvement:
    dans mon code html j’ai
    section
    aside
    /* ici j’ai des liens de navigation */
    /aside

    article
    /* ici j’ai mon diaporama comme dans ce tuto */
    /article
    /section
    Le problème est dans mon code css, quand je mets
    aside et article en display:inline-block afin de les mettre cote à cote, mes textes de description des images s’affichent floux.

    je compte sur quelqu’un qui pourra m’aider.
    merci :-)

  13. Matruck

    bonjours, ton tuto est excellent, mais je ne comprend pas comment afficher les infos, enfin plutôt, ou sont écrites ces infos ? (ps: j’y connait rien en js)

  14. Faneva

    bonjour et bravo Guillaume,
    Je voudrais rester sur la dernière image avec boucle=1
    est-ce possible
    Merci

  15. Lou

    Bonjour, comment puis-je porter un diaporama sur une page php, est-ce compatible? Pour le reste, c’est très bien fait ^^

    Merci!

  16. Yann

    Bonjour! J’aurais besoin d’aide, je fais exactement la même chose que dans le code, il m’est possible de cliqué sur les boutons (suivante, précédente, pause) mais il m’est impossible de relier les images correctement à ces bouttons ; rien ne semble s’afficher, quelqu’un pourrait m’aider ? Merci!

    • Yann

      J’ai trouvé! Si quelqu’un a le meme problème que moi, le CSS doit absoluement être utilisé dans un fichier nommé : style.css (comme dans le tuto!)

  17. Vara04

    Félicitation Guillaume

    Intégration en 2-2 sans pb

    Par contre j’ai ajouté un paramétrage pour masquer les boutons au démarrage dans la liste des defaults :
    var defaults = {

    , hideButtonOnStartup: true
    };

    Et dans la méthode init() j’ai ajouté :

    if (options.hideButtonOnStartup)
    diapo.siblings(« .jDiaporama_controls »).hide();

    Pour une prochaine version ou pour ceux qui seraient intéressés.

    A+

  18. Bruno

    Bonjour à tous,
    J’ai un bug sous IE9 !!
    Rien ne se passe !!
    Voici ma config :

    var myDiapo = $(« .diaporama1″).jDiaporama({
    debugMode: false,
    delay:0.4,
    theme: »default »,
    useThumbs: false,
    width:338,
    height:221,
    transition: »none »,
    status_controls: false,
    controls: false,
    nbSlices: 1,
    nbSlicesH: 1,
    boucles: 0,
    });

    aucun problème sous les autres navigateur ! même IE8 lol

    quelqu’un a-t-il déjà rencontré ce problème ?
    merci d’avance
    et merci Guillaume pour cet excellent job 😉

    • Aurelien

      Bonjour, j’ai le même problème, je suis sous ie8 et le diaporama ne marche pas

      • jacquart

        J’ai implémenter la dernière version de jquery, de mon coté ça a résolu le problème

  19. deTrox

    Bonjour Guillaume,

    Avant toute chose, bravo pour ce super boulot et merci.

    Comme une demande déjà formulée, je souffre d’un souci lors du premier chargement des images du diaporama.

    Lors du premier lancement, les puces se calent à gauche, l’image au centre, et la suite de ma page sous toutes les images qui composent le diaporama. En ré-actualisant ma page, tout se cale comme voulu à l’origine.

    Y aurait-il une possibilité de palier à ce problème de premier loading?

  20. Marie

    Finalement j’ai trouvé la solution ! c’était un problème de z index.
    Merci !

1 2 3 4 5 6

Laisser une réponse


Post shadow