Alle componenten

MotionZoom

Een afbeelding die vanaf haar plek naar volledig scherm zoomt; sleep haar weg om te sluiten.

WebReact NativeOverlays

Probeer het

Voorbeeld voorbereiden…

Kortste gebruik

Photo.jsx
<MotionZoom
  src={photo.thumb}
  zoomSrc={photo.full}
  width={240}
  height={160}
  style={{ objectFit: 'cover', borderRadius: 12 }}
/>;

Wat het voor je regelt

  • Een klik, Enter of spatie zoomt de afbeelding vanaf waar ze staat tot ze het scherm vult binnen margin.
  • De ingezoomde kopie begint precies zoals de miniatuur eruitziet, met de object-fit-uitsnede en hoekradius.
  • zoomSrc fadet in zodra hij is geladen.
  • Een klik, Escape of wegslepen sluit haar; een snelle worp sluit ook, en een korte sleep veert terug.

Gebruik het voor

  • Een fotoraster.
  • Een productgalerij.
  • Afbeeldingen in een blogpost.

Props

PropTypeStandaardBeschrijving
srcstringDe afbeelding die op haar plek wordt getoond.
zoomSrcstringEen grotere afbeelding die wordt getoond zodra ze is geladen; houd dezelfde beeldverhouding.
marginnumber24Ruimte rond de ingezoomde afbeelding in pixels.
disabledbooleanfalseZet zoomen uit.
onZoomChange(zoomed) => voidDraait met true bij inzoomen en false bij sluiten.
backdropStyleCSSPropertiesInline style voor de achtergrond.
transitionTransitionspringEen timingcurve { duration, easing } of een veer { tempo: 'spring', spring }. Veren behouden hun momentum als ze worden onderbroken.

Andere props gaan naar het gerenderde element, dus className, style en event handlers werken zoals gewoonlijk.

Web en React Native

De overlay bestaat alleen tijdens het zoomen (op het web een dialog in de bovenste laag), dus de afbeelding kan overal staan, zelfs in een alinea. Andere props gaan naar de img.

Geef in React Native source en zoomSource mee; de overlay is een transparante Modal.

Gebruikt in deze voorbeelden

Zoeken

Typ om de documentatie te doorzoeken.