Alle komponenter

MotionZoom

Et billede, der zoomer fra sin plads til fuld skærm; træk det væk for at lukke.

WebReact NativeOverlays

Prøv det

Forbereder eksemplet…

Korteste brug

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

Det klarer den for dig

  • Et klik, Enter eller mellemrum zoomer billedet fra, hvor det er, til det fylder skærmen inden for margin.
  • Den zoomede kopi starter præcis, som miniaturen ser ud, med sin object-fit-beskæring og hjørneradius.
  • zoomSrc toner ind, så snart det er indlæst.
  • Et klik, Escape eller at trække væk lukker det; et hurtigt kast lukker også, og et kort træk fjedrer tilbage.

Brug den til

  • Et fotogitter.
  • Et produktgalleri.
  • Billeder i et blogindlæg.

Props

PropTypeStandardBeskrivelse
srcstringBilledet, der vises på stedet.
zoomSrcstringEt større billede, der vises, når det er indlæst; behold samme billedformat.
marginnumber24Afstand omkring det zoomede billede i pixels.
disabledbooleanfalseSlår zoom fra.
onZoomChange(zoomed) => voidKører med true ved zoom ind og false ved lukning.
backdropStyleCSSPropertiesInline-style til baggrunden.
transitionTransitionspringEn timingkurve { duration, easing } eller en fjeder { tempo: 'spring', spring }. Fjedre bevarer deres momentum, når de afbrydes.

Andre props går til det renderede element, så className, style og event handlers virker som normalt.

Web og React Native

Overlayet findes kun, mens der er zoomet ind (en dialog i det øverste lag på nettet), så billedet kan sidde hvor som helst, selv i et afsnit. Andre props går til img.

Giv source og zoomSource i React Native; overlayet er en gennemsigtig Modal.

Brugt i disse eksempler

Søg

Skriv for at søge i dokumentationen.