jQuery lightBox plugin, mettez de l’effet sur vos images !

Que les utilisateurs de jQuery se rassurent, voilà enfin un plugin de type "LightBox" !

Pour ceux qui ne connaitrait pas encore LightBox, il s'agit à l'origine d'un script fonctionnant sous Scriptaculous. Mais le gros soucis c'est que Scriptaculous est vraiment énorme niveau poids, alors que jquery est beaucoup plus léger.

Regardez tout de suite la démo histoire de vous convaincre de la beauté de la chose :)

Allez, voici comment installer ce joujou sur votre site ...

Installation

  1. On télécharge et on inclue la librairie jQuery entre les balises HTML <head> et </head> :
    <script type="text/javascript" src="jquery-latest.pack.js"></script>
  2. Ensuite on télécharge le plugin et on inclue le fichier "jquery.lightbox-0.3.js" juste en dessous de jQuery :
    <script type="text/javascript" src="jquery.lightbox-0.3.js"></script>
  3. On inclue ensuite le fichier "jquery.lightbox-0.3.css" pour la mise en forme :
    <style type="text/css" media="screen">
            @import url(jquery.lightbox-0.3.css);
    </style>
  4. Assurez vous d'uploader, avec le .css, les 4 images .gif fourni dans le .zip !

Le plugin est prêt, il ne reste plus qu'a l'activer !

Activation du plugin

Alors plusieurs solutions s'offrent à vous, soit vous appliquez le plugin à tous les liens images de votre site, soit à une classe précise. Je vais vous montrez les différentes manières de procéder ...

Les portions de code suivantes sont à ajouter soit entre des balises <script type="text/javascript"> //le code ici </script>, soit dans un fichier .js
Par contre il doit impérativement ce trouver après le plugin.

Appliquer le plugin à tous les liens images du site

$("a").lightBox();

Appliquer le plugin à tous les liens images ayant une classe "light" (<a href="image1.jpg" class="light">...)

$("a.light").lightBox();

Appliquer le plugin à tous les liens images se trouvant dans une div avec une id "galerie" (<div id="galerie"><a href="image1.jpg">...)

$("#galerie a").lightBox();

Enfin vous avez saisie je pense ;)

Conclusions

Ce plugin est bien sympathique, même si le fonctionnement est légèrement différent de l'original. Il a au moins le mérite d'être un peu plus léger.

-----

Articles relatifs

  1. 24/10/2007 à 11:17 | #1

    Pas mal. Par rapport à l’original, dommage que cette version n’accepte pas les raccourcis clavier pour paser d’une image à l’autre (N, P, etc).

    Dans le même genre, mais plus sophistiqué, il existe Thickbox (toujours pour jQuery), qui permet d’afficher des images, du texte ou même une page web externe.

    Démo ici : http://jquery.com/demo/thickbox/

  2. k-ny
    24/10/2007 à 16:16 | #2

    Héhé, oui je connais Thickbox, c’est d’ailleurs lui que j’utilise pour ce site ^^

    Je ferais un petit tuto dessus un de ces 4 (j’avoue que ça me fait peur car il est tellement complet, ça risque d’être long a décrire)

  3. 11/12/2007 à 16:03 | #3

    Je me suis essayé a l’installer, sachant que je n’y connais strictement rien, ca a été bidouille bidouille…

    Bref j’ai réussi mais il me reste un probleme avec l’affichage du widget MyBlogLog sur la gauche.

    Si quelqu’un peut m’aider… se serait cool. cliquer sur le lien et la premiere image (la chaussure) : http://guillaumedhy.zevillage.org/news/les-insolites-de-google-earth

    Merci d’avance et merci beaucoup pour ce mini tuto !

    Bonne continuation

  4. 14/12/2007 à 14:53 | #4

    Merci pour ce tuto et même ce lien vers ThickBox, que je ne connaissais pas !
    Et c’est e-x-a-c-t-e-m-e-n-t ce que je cherchais ! :-D

  5. Eugene
    13/02/2008 à 16:59 | #5

    un petit commentaire pour ajouter qu’il m’a fallu passer par $(document).ready(function()
    {$(‘#galerie a’).lightBox();})et non le code que tu fournis pour le faire fonctionner sinon point de lightbox sur mon site mais faut dire que j’ai un peu abusé du java dessus : jquery.js, interface.js, rounded_corners_lite.inc.js et pour finir jquery.lightbox-0.3.js

  6. OnBoard
    29/03/2008 à 21:28 | #6

    Hello les gens !

    J’ai un petit problème…
    J’ai réussi à installé le jQuery sans trop de soucis…

    Mon seul blem c’est que mon site est composé de la manière suivante :

    Un fichier index.html dans lequel se trouve une .

    Dans cette je charge une page dans laquelle se trouvent mes images à visionner en grand (donc des liens direct vers des .jpg).

    Pour ke le jQuery marche, j’ai du mettre le script dans le head de la page chargée dans l’iframe.
    Le soucis est que jQuery n’est visible que dans l’iframe.
    (le background ne vas pas plus loin)
    C’est logik, mais j’aimerais trouver un moyen de faire s’effectuer le jQuery en dehors de l’iframe…

    J’ai tenté de mettre le code du scripte dans le head du fichier index.html, mais dans ce cas, les liens vers les images ne sont pas detectés et donc le jQuery ne fonctionne pas…

    J’espère avoir été assez clair, et si l’un de vous a ne serait-ce qu’une petite idée pour me débloquer, il est le bienvenu !

    Merci à tous !

    Florent

  7. cédric
    03/04/2008 à 19:29 | #7

    salu ben moi je désespère je vois qu’aparament tout le monde réussit à l’installer, mais moi j’ai essayer de plusieurs facons mais…. aucun succés il veut pas marcher donc si quelqu’un peut me dire pourquoi il ne fonctionne pas ca serait magnifik.

    Merci d’avance.

    Salu.

    Cédric.

  8. Fally
    07/05/2008 à 07:23 | #8

    Salut tt le monde,

    Juste pour dire que si vous utilisez prototype.js avec la page, le script ne fonctionne pas.

    $(« #galerie a »).lightBox();

  9. Rémy
    06/06/2008 à 15:44 | #9

    @Fally :

    C’est normal. Par défaut, Prototype, Mootools et jQuery utilisent $() pour désigner leur propre objet.

    Pour faire fonctionner jQuery avec les autres, il y a une astuce (documentée sur le site de jQuery) : utiliser jQuery en mode « non conflictuel ». Cela donne ceci :

    $jQ = jQuery.noConflict();

    A partir de là, en se basant sur lightbox :
    $jQ(« #galerie a »).lightBox();

    Tout simplement :) Il doit y avoir des techniques similaires pour Prototype et autres afin d’éviter les redéfinitions.

  10. Guillaume
    06/07/2008 à 16:04 | #10

    Bonjour, merci des explications.

    J’ai juste un petit soucis car je n’arrive pas a appliquer lightbox a toutes les images du site avec votre technique quelqu’un aurait une autre technique ou bien expliquer là ou il faut installer le script.

    Merci

  11. 11/07/2008 à 15:43 | #11

    Cela fais longtemps que je suis l’évolution de ce lightbox jquery (depuis la beta 0.1 ;-) ) et je remarque qu’il reste quelque petit bug sous firefox 3.
    J’attend la 0.6 avec impatience :p

  12. phylocoeur
    13/07/2008 à 07:27 | #12

    Ce script est tout bonnement bidon.

    Le gars s’est pas fais chier à remanier ce script, c’est ni fait, ni à faire.

  13. 06/09/2008 à 21:43 | #13

    Ah nikel, c’est exactement ce que je cherchais :)

    Merci

  14. xelios
    20/09/2008 à 20:05 | #14

    Salut,

    Un plugin de mon blog WP charge la librairie jQuery fournie avec WP. Est-il possible de rendre le lightbox compatible avec cette librairie là pour ne pas devoir charger la jQuery deux fois ?

  15. Vic
    16/11/2008 à 18:03 | #15

    Bonjour, merci pour les explications. J’ai juste un probleme, mes photos ne s’affiche pas entierement, on ne voit pas le bas et les cotés de l’image, est ce normal ?

  16. Alexis
    24/11/2008 à 18:41 | #16

    Bonjour,

    J’ai un problème pour faire fonctionner 2 plugin jquery ensemble : jquery lightbox et jquery easynews plus.

    Il fonctionnent très bien séparément mais quand je mets les activations des ces 2 plugin à la suite, lightbox ne fonctionne plus.
    help me please !

  17. 04/03/2009 à 22:17 | #17

    Hey, je suis en train de cree le site web de mon agence de projet dans le cadre de mes etudes, et j’aurais bien besoin de cette pitite Lightbox mais apparament elle bug totalemnt avec le javascript de mon menu ( c’est un petit script que j’ai trouver sur ce meme site d’ailleurs, vous savez, la petite div qui se deplace sous les boutons :D °°° ) Je n’est pas d’autres script, juste 1 feuilles de styles .css; Et donc mon petit probleme : je fais tout bien nikel type top perfect super cool mais la lightbox ne se lance pas, si je clique sur mes miniatures photos, elle apparaisent en taille réele sur une page blanche…. Voilà donc, si quelqu’un aurait une solution pour rendre la lightbox et mon autre script compatible, je vous en serais tres reconnaisant !

    Merci d’avance !

    Mario’

  18. 17/03/2009 à 10:29 | #18

    J’ai le même problème que Mario, je suis en train de refaire mon site, avec un menu déroulant sur le côté utilisant un jquery-1.3.1.js, si je l’enlève la lightbox jquery fonctionne parfaitement, si je le laisse évidemment ça plante, le menu fonctionne mais la lightbox ne fonctionne plus et les images s’affichent dans une page blanche. Une solution ?

    Dehlya

  19. 17/03/2009 à 10:47 | #19

    Bon finalement j’ai trouvé, supprimé le jquery-1.3.1.js, que je soupçonne inutile, ajouté un rel= »lightbox » dans mes liens et supprimé la ligne : //$(‘a’).lightBox(); // Select all links in the page dans mon javascript. Et tout semble fonctionner correctement…pour l’instant ;)

    Dehlya

  20. ben
    18/03/2009 à 15:58 | #20

    Bonjour,
    je voudrais savoir comment enlever le numéro des images dans le fichier javascript, qu’il n’y est que le nom qui apparaisse .
    Merci d’avance

    BEN

  21. Emmanuel
    18/04/2009 à 17:44 | #21

    Bonjour,

    j’utilise pour mon site le script easyslider fonctionnant avec jquery, tout marche parfaitement, j’ai essayé d’intégrer le script pour la lightbox mais ça ne fonctionne pas, y a t-il une astuce pour faire co-habiter les 2 scripts jquery ensemble ? est-il possible qu’ils rentrent en conflit ?

    Merci de votre aide précieuse,

    Bon week end,

    Emmanuel

  22. toto
    07/07/2009 à 11:58 | #22

    @Dehlya
    Moi, j’ai eu la même souci et je l’ai résout juste en placant le deux include de javascript devant la ligne $(« a.lightboxe »).lightBox();

  23. laurent
    20/08/2009 à 13:37 | #23

    @Dehlya
    bonjour,
    j’aimerais savoir si c’est normal qu’en utilisant jQuery lightBox plugin ça e marche pas dans des pages en php ?
    merci beaucoup
    laurent

  24. Harouna
    04/11/2009 à 19:12 | #24

    Bjr à tous j’ai installé mais ça ne marche pas lorque je clique sur l’image voici mon code html:

  25. gh
    07/08/2011 à 15:07 | #25

    Pour ma part cela marche très bien avec le php par contre le css est à paufiner je pense.

  1. 23/10/2007 à 16:06 | #1
  2. 20/07/2010 à 11:10 | #2