How to launch Fancybox?

Fancybox: Den ultimative billedfremviser

14/07/2022

Rating: 4.75 (2689 votes)

I den digitale tidsalder er visuelt indhold kongen. Fra fotografier til grafik spiller billeder en afgørende rolle i at engagere besøgende på en hjemmeside. Men hvordan præsenterer man disse billeder på den mest effektive og æstetisk tiltalende måde? Svaret ligger ofte i et velimplementeret lysboks-plugin, og her skinner Fancybox virkelig igennem. Fancybox er et af de mest populære og alsidige JavaScript-plugins til at vise billeder, HTML-indhold og endda videoer i en elegant lysboks-overlay. Dette plugin er kendt for sin brugervenlighed, tilpasningsmuligheder og smukke animationer, der giver en professionel og poleret brugeroplevelse. I denne dybdegående guide vil vi udforske, hvordan du kan lancere og udnytte Fancybox til fulde på din egen hjemmeside.

How to launch Fancybox?
Indholdsfortegnelse

Hvad er Fancybox?

Fancybox er et gratis og open-source JavaScript-plugin, der gør det muligt at vise indhold i et modalvindue (en lysboks), som vises oven på den aktuelle side. Oprindeligt designet til at vise billeder, har Fancybox udviklet sig til at understøtte en bred vifte af indholdstyper, herunder:

  • Enkeltbilleder
  • Billedgallerier (med navigation mellem billederne)
  • Inline HTML-indhold (f.eks. formularer, beskeder)
  • Indhold fra eksterne URL'er (via AJAX)
  • YouTube, Vimeo og andre videoer
  • SWF-filer

Pluginets intuitive design og dets evne til at forbedre brugeroplevelsen uden at kræve dyb teknisk viden gør det til et foretrukket valg for webdesignere og udviklere over hele verden. Det er kompatibelt med moderne browsere og responsive designprincipper, hvilket sikrer, at dine billeder ser fantastiske ud på tværs af alle enheder.

Grundlæggende Opsætning af Fancybox

At komme i gang med Fancybox er overraskende ligetil. Du skal blot inkludere de nødvendige CSS- og JavaScript-filer på din hjemmeside. Der findes flere versioner af Fancybox, men den mest almindelige og anbefalede er Fancybox 3 (v3.5.7), som er den seneste stabile udgave. Lad os se på, hvordan du inkluderer den:

Trin 1: Download Fancybox

Du kan downloade de seneste filer fra den officielle GitHub-repository eller bruge en CDN (Content Delivery Network) for nemmere integration. Ved at bruge en CDN undgår du at skulle uploade filerne til din egen server.

Trin 2: Inkluder CSS og JavaScript

Åbn din HTML-fil (typisk `index.html` eller din skabelonfil) og tilføj følgende linjer i ``-sektionen:

<!-- Fancybox CSS --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.css"> <!-- jQuery (hvis du bruger en ældre version eller har brug for det til andre plugins) --> <!-- <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> --> <!-- Fancybox JavaScript --> <script src="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.umd.js"></script> 

Bemærk: Fancybox 3 kræver ikke jQuery. Hvis du bruger en ældre version (f.eks. Fancybox 2), skal du inkludere jQuery før Fancybox JavaScript-filen.

Trin 3: Initialiser Fancybox

Efter at have inkluderet filerne, skal du initialisere Fancybox. Dette gøres typisk lige før den afsluttende ``-tag ved at tilføje følgende JavaScript:

<script> Fancybox.bind('[data-fancybox]', { // Dine Fancybox-indstillinger her }); </script> 

Denne kode fortæller Fancybox at finde alle elementer på siden, der har attributten `data-fancybox`, og gøre dem til Fancybox-aktiverede elementer.

Sådan Bruger du Fancybox til Billeder

Den mest almindelige anvendelse af Fancybox er til at vise billeder. For at gøre et billede klikbart og åbne det i en Fancybox-lys, skal du placere et ``-tag omkring dit ``-tag og tilføje `data-fancybox` attributten til ``-tagget. Du skal også angive kilden til billedet i `href`-attributten.

<a href="sti/til/dit/store/billede.jpg" data-fancybox="gallery" data-caption="En beskrivende tekst"> <img src="sti/til/dit/thumbnail/billede.jpg" alt="Thumbnail"></a> 

Her er en nedbrydning af attributterne:

  • `href`: Angiver URL'en til det fulde billede, der skal vises i lysboksen.
  • `data-fancybox`: Dette er den vigtigste attribut, der aktiverer Fancybox for dette link. Hvis du har flere billeder, du vil gruppere sammen i et galleri, skal du give dem alle den samme værdi for `data-fancybox` (f.eks. `gallery`).
  • `data-caption`: Valgfri attribut til at tilføje en billedtekst, der vises under billedet i lysboksen.

Oprettelse af Billedgallerier

For at oprette et galleri, hvor brugere kan navigere mellem billederne ved hjælp af pileknapper, skal du blot give flere ``-tags med `data-fancybox` attributten den samme værdi. For eksempel:

<!-- Billede 1 --> <a href="billede1.jpg" data-fancybox="my-gallery" data-caption="Billede 1"> <img src="thumbnail1.jpg" alt="Thumbnail 1"></a> <!-- Billede 2 --> <a href="billede2.jpg" data-fancybox="my-gallery" data-caption="Billede 2"> <img src="thumbnail2.jpg" alt="Thumbnail 2"></a> <!-- Billede 3 --> <a href="billede3.jpg" data-fancybox="my-gallery" data-caption="Billede 3"> <img src="thumbnail3.jpg" alt="Thumbnail 3"></a> 

Når disse links klikkes, vil Fancybox automatisk oprette et galleri, hvor brugeren kan bladre mellem `billede1.jpg`, `billede2.jpg` og `billede3.jpg` ved hjælp af pilene i lysboksen.

Fancybox med Andre Indholdstyper

Fancybox's alsidighed stopper ikke ved billeder. Lad os se på, hvordan du kan bruge det til at vise andre typer indhold:

Visning af Inline HTML

Du kan vise ethvert stykke HTML-indhold direkte fra din side i en Fancybox-lys. Dette er perfekt til at vise kontaktformularer, pop-up-beskeder eller små sektioner af indhold uden at forlade siden.

For at gøre dette, skal du give dit ``-tag `data-src` attributten, der peger på ID'et af det HTML-element, du vil vise. Du skal også angive `data-type="inline"`.

<!-- Knap til at åbne inline indhold --> <a href="#inline-content" data-fancybox="modal" data-type="inline">Åbn Formular </a> <!-- Det skjulte inline indhold --> <div id="inline-content" style="display: none;"> <h3>Kontakt Os</h3> <p>Udfyld formularen nedenfor:</p> <!-- Din formular her --> <form> <input type="text" placeholder="Navn"> <input type="email" placeholder="Email"> <button type="submit">Send </form> </div> 

Vigtigt: Det HTML-indhold, du vil vise, skal normalt være skjult (f.eks. med `display: none;`) og placeres uden for den direkte visning på siden. `data-src` peger på elementets ID.

Visning af Videoer (YouTube/Vimeo)

Fancybox gør det nemt at indlejre videoer fra populære platforme som YouTube og Vimeo.

Brug blot `data-src` attributten til at angive videoens URL, og sæt `data-type` til `iframe` eller lad Fancybox automatisk detektere det.

<!-- Link til YouTube video --> <a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ" data-fancybox="video-gallery"> <img src="youtube-thumbnail.jpg" alt="YouTube Thumbnail"></a> <!-- Link til Vimeo video --> <a href="https://vimeo.com/123456789" data-fancybox="video-gallery"> <img src="vimeo-thumbnail.jpg" alt="Vimeo Thumbnail"></a> 

Fancybox vil automatisk oprette en `

Visning af Indhold fra Eksterne URL'er (AJAX)

Du kan også indlæse indhold fra en anden URL ved hjælp af AJAX. Dette er nyttigt, hvis du har indhold, der dynamisk genereres på serveren.

Brug `data-src` til at angive den eksterne URL og `data-type="ajax"`.

<a href="/din-ajax-url" data-fancybox="ajax-content" data-type="ajax">Indlæs Indhold Via AJAX </a> 

Avancerede Indstillinger og Tilpasning

Fancybox tilbyder et væld af muligheder for at tilpasse udseendet og adfærden. Disse indstillinger kan overføres som et objekt, når du binder Fancybox, eller du kan definere globale indstillinger.

Almindelige Indstillinger

Her er nogle af de mest brugte indstillinger:

IndstillingBeskrivelseStandardværdi
speedAnimationens hastighed i millisekunder.300
transitionEffectAnimationseffekten ('fade', 'slide', 'zoom-in-out', 'none').'fade'
loopOm galleriet skal loopes (gå fra sidste til første billede).false
arrowsVis pile til navigation i gallerier.true
infobarVis informationslinjen (billednummer og total).true
buttonsVis knapperne (luk, zoom, etc.).true
slideShowAktiver slideshow-funktionen.false
thumbsVis thumbnails under billedet (kræver yderligere opsætning).false
autoScaleSkalér billeder automatisk for at passe ind i viewport.true
autoDimensionsForsøg at bestemme dimensioner for inline/ajax indhold.true
modalKræver brugeren at interagere med lysboksen før lukning.false

Eksempel med Indstillinger

Her er et eksempel på, hvordan du kan binde Fancybox med nogle brugerdefinerede indstillinger:

Fancybox.bind('[data-fancybox="custom-gallery"]', { loop: true, arrows: true, infobar: false, buttons: [ 'zoom', 'slideShow', 'fullScreen', 'download', 'thumbs', 'close' ], transitionEffect: 'slide', idleTime: false // Deaktiverer timeren for at skjule kontrolpanelet }); 

Du ville så bruge `data-fancybox="custom-gallery"` på dine links for at anvende disse specifikke indstillinger.

Tilpasning af Udseendet

Fancybox's udseende kan fuldt ud tilpasses ved at redigere dens CSS-fil eller ved at tilføje dine egne CSS-regler. Du kan ændre farver, fonte, størrelser og animationer for at matche din hjemmesides design.

For at overskrive standardstilarter, kan du tilføje dine egne CSS-regler efter Fancybox's CSS-fil er inkluderet:

/* Ændrer baggrundsfarven på overlayet */ .fancybox-overlay { background: rgba(0, 0, 0, 0.8); } /* Ændrer farven på lukke-knappen */ .fancybox-button--close { color: white; background-color: red; border-radius: 50%; } /* Tilføjer en skygge til billedet */ .fancybox-content img { box-shadow: 0 0 15px rgba(0,0,0,0.5); } 

Du kan inspicere Fancybox-elementerne med din browsers udviklerværktøjer (typisk F12) for at finde de specifikke CSS-klasser, du skal målrette.

Ofte Stillede Spørgsmål (FAQ)

Hvordan undgår jeg, at Fancybox indlæses på bestemte billeder?

Hvis du har billeder på din side, som du ikke ønsker skal åbnes med Fancybox, skal du blot undlade at tilføje `data-fancybox`-attributten til deres ``-tags.

Kan jeg bruge Fancybox uden et galleri?

Ja, hvis du kun vil åbne et enkelt billede eller indhold i en lysboks, behøver du kun at tilføje `data-fancybox` til det pågældende link. Du behøver ikke at specificere en værdi, hvis det ikke skal grupperes.

Hvordan deaktiverer jeg Fancybox på mobile enheder?

Du kan bruge CSS media queries til at skjule eller deaktivere Fancybox-links på mobile enheder, eller du kan bruge JavaScript til at kontrollere, hvornår Fancybox initialiseres, baseret på skærmstørrelsen.

if (window.innerWidth > 768) { // Kun initialiser på skærme bredere end 768px Fancybox.bind('[data-fancybox]', {}); } 

Hvordan får jeg thumbnails til at fungere?

For at bruge thumbnail-navigationen i Fancybox, skal du tilføje `data-thumb` attributten til dine ``-tags, der peger på URL'en til thumbnail-billedet. Sørg også for at aktivere `thumbs` indstillingen:

<a href="store_billede.jpg" data-fancybox="gallery-with-thumbs" data-thumb="thumbnail.jpg"> <img src="thumbnail.jpg" alt="Thumbnail"></a> 
Fancybox.bind('[data-fancybox="gallery-with-thumbs"]', { thumbs: { autoStart: true, // Viser thumbnails automatisk } }); 

Konklusion

Fancybox er et kraftfuldt og fleksibelt værktøj, der kan løfte præsentationen af dit visuelle indhold markant. Fra enkle billedfremvisninger til komplekse gallerier og videoafspilning, tilbyder Fancybox en professionel og brugervenlig løsning. Ved at følge denne guide kan du nemt integrere og tilpasse Fancybox til dine specifikke behov og give dine besøgende en enestående visuel oplevelse. Uanset om du er en erfaren udvikler eller nybegynder, er Fancybox et uvurderligt plugin i din webudviklingsværktøjskasse.

Hvis du vil læse andre artikler, der ligner Fancybox: Den ultimative billedfremviser, kan du besøge kategorien Teknologi.

Go up