MotionZoom
Yerinden tam ekrana yakınlaşan bir görsel; kapatmak için uzağa sürükleyin.
WebReact NativeKatmanlar
Deneyin
Örnek hazırlanıyor…
En kısa kullanım
<MotionZoom
src={photo.thumb}
zoomSrc={photo.full}
width={240}
height={160}
style={{ objectFit: 'cover', borderRadius: 12 }}
/>;Sizin yerinize hallettikleri
- Tıklama, Enter ya da Space görseli bulunduğu yerden
marginiçinde ekranı dolduracak şekilde yakınlaştırır. - Yakınlaştırılan kopya tam olarak küçük resim gibi başlar;
object-fitkırpması ve köşe yarıçapıyla. zoomSrcyüklenince belirerek gelir.- Tıklama, Escape ya da uzağa sürüklemek onu kapatır; hızlı bir fırlatma da kapatır, kısa bir sürükleme ise yayla geri döner.
Şunlar için kullanın
- Bir fotoğraf ızgarası.
- Bir ürün galerisi.
- Bir blog yazısındaki görseller.
Props
| Prop | Tip | Varsayılan | Açıklama |
|---|---|---|---|
src | string | Yerinde gösterilen görsel. | |
zoomSrc | string | Yüklenince gösterilen daha büyük görsel; aynı en boy oranını koruyun. | |
margin | number | 24 | Yakınlaştırılan görselin çevresinde bırakılan boşluk, piksel. |
disabled | boolean | false | Yakınlaştırmayı kapatır. |
onZoomChange | (zoomed) => void | Yakınlaştırılınca true, kapanınca false ile çalışır. | |
backdropStyle | CSSProperties | Arka plan için satır içi stil. | |
transition | Transition | spring | Bir timing eğrisi { duration, easing } ya da bir yay { tempo: 'spring', spring }. Yaylar kesildiğinde momentumlarını korur. |
Diğer props render edilen öğeye gider; böylece className, style ve olay işleyiciler her zamanki gibi çalışır.
Web ve React Native
Katman yalnızca yakınlaştırılmışken var olur (web'de üst katman diyaloğu); görsel herhangi bir yerde, hatta bir paragraf içinde bile olabilir. Diğer props img'ye gider.
React Native'de source ve zoomSource verin; katman şeffaf bir Modal'dır.