Lewebhusayithi seyihunyushwe ngekuzenzakalela. Uma ngabe kukhona lokungacaci, sicela ubuke imibhalo yesiNgisi.
Kusetjentiswa Lokusisekelo
Layisha emafayela eGridzy kuseva yakho bese uwafaka kuwebhusayithi yakho (kuvame kuba sesigabeni senhloko):
<link rel="stylesheet" href="gridzy/gridzy.min.css" />
<script src="gridzy/gridzy.min.js"></script>Ngeta ikhodi ye-HTML (noma ngukuphi esigabeni semtimba):
<div class="gridzy">
<img src="https://loremflickr.com/640/480?random=1" alt="a random image" />
<img src="https://loremflickr.com/480/640?random=2" alt="another random image" />
<img src="https://loremflickr.com/640/640?random=3" alt="yet another random image" />
<img src="https://loremflickr.com/640/480?random=4" alt="a random image again" />
<img src="https://loremflickr.com/640/480?random=5" alt="one last random image" />
</div>Nguloko! Leso sibonelo lesisebenta ngalokuphelele. Kute kucala lokungetiwe lokudzingekako.
Kuhleleka
Indlela elula yekulungisa Gridzy kutsi, nje usebentise timfanelo HTML. Udzinga kuphela kufaka ngaphambilini kwemagama etinketho nge data-gridzy- . Ngako-ke, kusetha inketho spaceBetween , vele wengete imfanelo data-gridzy-spaceBetween .
<div class="gridzy" data-gridzy-spaceBetween="20" data-gridzy-desiredHeight="400">
<img src="https://loremflickr.com/640/480?random=1" alt="a random image" />
<img src="https://loremflickr.com/480/640?random=2" alt="another random image" />
<img src="https://loremflickr.com/640/640?random=3" alt="yet another random image" />
<img src="https://loremflickr.com/640/480?random=4" alt="a random image again" />
<img src="https://loremflickr.com/640/480?random=5" alt="one last random image" />
</div>Tintfo letiyinhloko
Justified Tintfo letingakhetfwa
Waterfall Tinkhetho Tekuma
Tintfo Letinyenti Letitfutfukile
Kute utfole tintfo letinyenti letisezingeni lelisetulu, hlola i -API .
I-HTML yeluchaza
Isakhiwo se-HTML lesilula kakhulu seGridzy ngulesi:
<div class="gridzy">
<img src="https://loremflickr.com/640/480?random=1" alt="a random image" />
<img src="https://loremflickr.com/480/640?random=2" alt="another random image" />
<img src="https://loremflickr.com/640/640?random=3" alt="yet another random image" />
<img src="https://loremflickr.com/640/480?random=4" alt="a random image again" />
<img src="https://loremflickr.com/640/480?random=5" alt="one last random image" />
</div>Noma kunjalo, Gridzy uyagucugucuka kakhulu futsi ungasebentisa cishe noma ngusiphi lesinye sakhiwo se-HTML. Kukhona emaphuzu lambalwa kuphela lokufanele uwacabangele:
- Umntfwana ngamunye we-elementi yesitja umelela intfo yinye kugridi.
- Kokubili element sitja kanye nebantfwana bayo kungaba noma yiluphi uhlobo tag, njenge
ulkanyeli(vele ucabangele reset kabusha isiphequluli defaults). - Uma intfo
imgingasiyo umntfwana locondzile yona, idinga iklasigridzyImage.
Ngako-ke loku kuphindze kube sakhiwo se-HTML lesisebenta:
<ul class="gridzy">
<li>
<span>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=1" alt="a random image" />
</span>
</li>
<li>
<span>
<img class="gridzyImage" src="https://loremflickr.com/480/640?random=2" alt="another random image" />
</span>
</li>
<li>
<span>
<img class="gridzyImage" src="https://loremflickr.com/640/640?random=3" alt="yet another random image" />
</span>
</li>
<li>
<span>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=4" alt="a random image again" />
</span>
</li>
<li>
<span>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=5" alt="one last random image" />
</span>
</li>
</ul>Ikakhulukati uma ufuna kwengeta emagama labhalwe phansi, udzinga sakhiwo se-HTML lesitfutfukile. Kufundza kabanti ngako, buka Tihloko & Tikhumba .
Tincazelo & Tikhumba
Uma ufuna kwengeta emagama labhalwe phansi kugalari yakho, kufanele uchaze kubukeka. Ngako-ke, letinye tikhumba letichazwe kusengaphambili tiyatfolakala. Sikhumba ngasinye lesinefayela le-CSS. Udzinga kwengeta lelifayela ngetulu kwemafayela lamakhulu eGridzy (kuvame kuba sesigabeni senhloko):
<link rel="stylesheet" href="gridzy/skins/gridzySkinClassic/style.min.css" />Ngetulu kwaloko udzinga sakhiwo se-HTML lesitfutfukile:
<div class="gridzy gridzySkinClassic">
<figure>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=1" alt="a random image" />
<figcaption class="gridzyCaption">a caption text</figcaption>
</figure>
<figure>
<img class="gridzyImage" src="https://loremflickr.com/480/640?random=2" alt="another random image" />
<figcaption class="gridzyCaption">another caption text</figcaption>
</figure>
<figure>
<img class="gridzyImage" src="https://loremflickr.com/640/640?random=3" alt="yet another random image" />
<figcaption class="gridzyCaption">yet another caption text</figcaption>
</figure>
<figure>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=4" alt="a random image again" />
<figcaption class="gridzyCaption">a caption text again</figcaption>
</figure>
<figure>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=5" alt="one last random image" />
<figcaption class="gridzyCaption">one last caption text</figcaption>
</figure>
</div>Uma uzibuta ngesakhiwo se-HTML, buka i-Semantic HTML .
Kulesihloko ungasebentisa noma ngabe nguyiphi inhlobo yethegi, vele ucinisekise kutsi inesigaba gridzyCaption . Intfo img idzinga sigaba se gridzyImage .
Lesibonelo lesingenhla sikukhombisa gridzySkinClassic . Kusebentisa lenye leyehlukile, vele ufake ligama lesikhumba ngalelinye laleti:
Tikhumba letifakiwe
| Emakilasi latfolakalako | |
|---|---|
| Sikhumba Singenalutho indzawo lenhle yekucala yekwakha sikhumba sakho kubuka bukhoma | gridzySkinBlank |
| gridzySkinClassic kubuka bukhoma | gridzySkinClassic(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
| gridzySkinFullOverlay kubuka bukhoma | gridzySkinFullOverlay(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
| gridzySkinLift kubuka bukhoma | gridzySkinLift(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
| gridzySkinMagnifier kusebenta kwekusondzeta akufakiwe kubuka bukhoma | gridzySkinMagnifier(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
Tonkhe letikhumba letingenhla tidzinga lifayela le-CSS kuphela, kepha kunetikhumba letengetiwe letiphindze tidzinge lifayela le-JavaScript:
<link rel="stylesheet" href="gridzy/skins/gridzySkinBlur/style.min.css" />
<script src="gridzy/skins/gridzySkinBlur/script.min.js"></script>| Emakilasi latfolakalako | |
|---|---|
| gridzySkinBlur akusebenti ku IE kubuka bukhoma | gridzySkinBlur(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
| gridzySkinCard kubuka bukhoma | gridzySkinCard(KUKHULULIWE kusukela ngenguqulo 2.6.0) |
Tintfo Letikhetsekile Tesikhumba
Kusukela version 2.6.0 kukhona Tintfo letingakhetfwa tekucubungula tikhumba letakhelwe ngaphakathi. Kuya ngesikhumba lesitsite ungasetha umbala wangemuva, umbala wembhalo kanye nesitfunti sembhalo. Kufanele nje usebentise timphahla tesiko te-CSS njengobe ubona lapha:
<div class="gridzy gridzySkinClassic" style="--background: rgba(0, 80, 117, .8); --color: rgb(238, 238, 238); ">
<figure>
<img class="gridzyImage" src="https://loremflickr.com/640/480?random=1" alt="a random image" />
<figcaption class="gridzyCaption">a caption text</figcaption>
</figure>
<figure>
<img class="gridzyImage" src="https://loremflickr.com/480/640?random=2" alt="another random image" />
<figcaption class="gridzyCaption">another caption text</figcaption>
</figure>
...
</div>Hlola tintfo letigucukako letisekelwako kanye nemanani lakhonako esikhumba ngasinye lapha:
gridzySkinClassic
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
--text-shadow | none | ivumela noma nguliphi linani lembhalo-wesitfunti se-CSS |
gridzySkinFullOverlay
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
--text-shadow | none | ivumela noma nguliphi linani lembhalo-wesitfunti se-CSS |
gridzySkinLift
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
--text-shadow | 0 0 10px rgb(0, 0, 0), 0 0 20px rgb(0, 0, 0), 0 0 30px rgb(0, 0, 0) | ivumela noma nguliphi linani lembhalo-wesitfunti se-CSS |
gridzySkinMagnifier
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
Lesikhumba asisekeli --text-shadow
gridzySkinBlur
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
--text-shadow | 0 0 10px rgb(0, 0, 0) | ivumela noma nguliphi linani lembhalo-wesitfunti se-CSS |
gridzySkinCard
| Kugucugucuka | Linani lelijwayelekile | Kwatiswa |
|---|---|---|
--background | rgba(0, 0, 0, 1) | ivumela noma nguliphi linani lelingemuva le-CSS |
--color | rgb(255, 255, 255) | ivumela noma nguliphi linani lembala we-CSS |
--text-shadow | none | ivumela noma nguliphi linani lembhalo-wesitfunti se-CSS |
Tonkhe tikhumba letichazwe kusengaphambili tisekela kuphela imibhalo lelula. Ungakha tikhumba takho kakhulu futsi letiyinkimbinkimbi kakhulu. Ngicela ubuke iStayela Gridzy .
Sitayela seGridzy
Uma kungekho sikhumba lesichazwe kusengaphambili lesihambisana netidzingo takho, ungasitayela sakho.
Indlela lelula kutsi ucale ukopishe sikhumba lesikhona bese uyasivumelanisa netidzingo takho. I gridzySkinBlank yesikhumba lechazwe kusengaphambili beyivame kuniketa sisekelo lesihle kanye nemibhalo lemihle kufayela le-CSS:
/** SKIN Blank **/
/* all gallery items (direct children of the main container element) */
.gridzySkinBlank > .gridzyItem {
overflow: hidden;
}
/* all gallery images (predefined in Gridzy's main CSS file, but can be overridden) */
.gridzySkinBlank .gridzyImage {
}
/* all gallery captions (just create your very own style) */
.gridzySkinBlank .gridzyCaption {
margin: 0;
padding: .5em;
opacity: 0;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
position: absolute;
z-index: 1;
top: 0;
left: 0;
width: 100%;
height: 100%;
box-sizing: border-box;
transition: opacity .5s;
overflow: auto;
background: rgba(0, 0, 0, .7);
color: rgb(255, 255, 255);
}
.gridzySkinBlank > .gridzyItem:hover .gridzyCaption {
opacity: 1;
}Kufayela le-CSS utotfola emakilasi latsi gridzySkinBlank , gridzyImage kanye gridzyCaption . Gridzy ngokwayo akadzingi lamakilasi. Tisetjentiselwa sitayela kuphela ngako ungatisusa noma utibite kabusha uma utsandza.
Ngetulu kwaloko utawutfola iklasi le-CSS gridzyItem . Gridzy usetha leli kilasi ngekuzenzakalelayo kubo bonkhe bantfwana labacondzile be-elementi yesitja lesiyinhloko. Ngako-ke, ungasebentisa leli kilasi kusitayela tintfo tegalari yakho.
Ingcondvo Tintfo Letibalulekile
- Lokucuketfwe yintfo kufanele kuphendvule ngalokugcwele. Cabanga kutsi usayizi element nakanjani kuyoshintsha. Sebentisa emanani emaphesenti esikhundleni semanani emaphikseli. Futsi buka inketho yekuma kweGridzy
autoFontSize, lebopha usayizi wefonti kusayizi yebhokisi lentfo. - Intfo ngayinye kufanele ibe nesilinganiso sesici lesichazwe kahle. Silinganiso sesici sentfo angeke sishintje futsi siyadzingeka kubala igridi. Ngako-ke nangabe intfo ingakazenzakale ibe nesilinganiso sesici lesichazwe kahle, yichaze kusengaphambili ngesandla (sib. nge-css).
Ngalesinye sikhatsi, kungaba lula kwenta isitayela lokucuketfwe tintfo ngaphambi kwekutsi Gridzy acale. Vele ususe i gridzy yeklasi noma ifayela le-javascript le-Gridzy kwesikhashana ngaloku.
Nguloko! Yikho konkhe lokudzingako kwakha sikhumba sakho kakhulu. Iningi letikhumba letichazwe ngaphambilini alisebentisi ngaphezu kwaloko loku.
Kepha kungaba nalokunye uma utsandza ...
Tikhumba Letitfutfukile
I-Gridzy isebentisa emakilasi e-CSS lamanyenti kune gridzyItem kuphela . Linyenti lawo litawusethwa ngekuzenzakalela futsi ungawasebentisela sitayela futsi.
Emakilasi Esitja Lesiyinhloko
| Ligama Lelikilasi | Incazelo |
|---|---|
gridzykusetha ngesandla | Gridzy utfola ngekuzenzakalelayo tintfo letineli kilasi bese uyatiqalisa. |
gridzyAnimated | Itawusethwa ngekuzenzakalela uma ngabe inketho ye animate true . Uma lelikilasi lisethwe ngesandla, inketho animate itawuvele itfole true futsi (ngaphandle uma isethwe ngalokucacile ku false ). |
Emakilasi etintfo
| Ligama Lelikilasi | Incazelo |
|---|---|
gridzyItem | Kutawubekwa masinyane nje lapho intfo iqala inchubo yekucala. Angeke siphindze sisuswe. |
gridzyItemInitializing | Kutawubekwa masinyane nje lapho intfo iqala inchubo yekucala. Kutawutsatfwa esikhundleni se- gridzyItemReady ngekushesha nje lapho lentfo seyiqaliswe ngalokuphelele. Kusho hhayi kutsi titfombe tilayishiwe ngalokuphelele (bona gridzyItemLoading ), kepha intfo ilungele kubonakala. |
gridzyItemReady | Itawutsatsa sikhundla se gridzyItemInitializing ngekushesha nje lapho lentfo seyiqaliswe ngalokuphelele. Angeke siphindze sisuswe. Kusho hhayi kutsi titfombe tilayishwe ngalokugcwele (bona gridzyItemComplete ), kepha intfo ilungele kutfola kubonakala. |
gridzyItemLoading | Kutawubekwa masinyane nje lapho intfo iqala inchubo yekucala. Kutawutsatfwa esikhundleni se- gridzyItemComplete ngekushesha nje lapho titfombe leticuketfwe (imvamisa yinye kuphela) tilayishwa ngalokugcwele. |
gridzyItemComplete | Itawutsatsa sikhundla se gridzyItemLoading ngekushesha nje lapho titfombe leticuketfwe (imvamisa yinye kuphela) tilayishwa ngalokuphelele. Angeke siphindze sisuswe. |
gridzyItemInitialToVisible | Itawubekwa masinyane nje lapho intfo icala kuvela kwekucala. Kutawususwa ngekushesha nje lapho intfo ibonakala ngalokuphelele. |
gridzyItemVisible | Kutawubekwa masinyane nje lapho intfo ibonakala ngalokuphelele. Kutawususwa ngekushesha nje lapho lentfo icala kunyamalala. |
gridzyItemVisibleToHidden | Kutawubekwa ngekushesha nje lapho intfo icala kunyamalala. Kutawususwa ngekushesha nje lapho lentfo ifihlekile ngalokuphelele. |
gridzyItemHidden | Kutawubekwa masinyane nje lapho intfo ifihlekile ngokuphelele. Kutawususwa ngekushesha nje lapho lentfo icala kuvela. |
gridzyItemHiddenToVisible | Itawubekwa ngekushesha nje lapho intfo icala kuvela (ngaphandle kwekuvela kwekucala – bona likilasi gridzyItemInitialToVisible ). Kutawususwa ngekushesha nje lapho intfo ibonakala ngalokuphelele. |
gridzyItemVisibleToVisible | Itawubekwa masinyane nje lapho intfo letsite kugridi yashintja, kepha intfo ngokwayo beyikhona futsi ihlale ibonakala. Kutawususwa ngekushesha nje lapho i-animation yekushintja iphelile. |
Ngekujwayelekile inkomba yenchubo kanye netithombe letinyakatako tetitfombe letivelako naletinyamalalako tichazwe kusengaphambili yifayela le-Gridzy main CSS.
Ngalamakilasi e-CSS lashiwo ngenhla ungasitayela inkomba yakho yenchubo kanye ne-animations. Dare a ubuke ku Gridzy main CSS ifayela, kucondza kutsi yini bekutawudzingeka kutsi uyicitse. Akukho kwesaba, konkhe kubhalwe kahle lapho.
Ncusa kulayisha
Uma usebentisa titfombe letinyenti, kungaba ngumcondvo lomuhle kusita Gridzy kwakha igridi ngekushesha.
Vikela Kugcuma Titfombe
Gridzy udzinga ngalokuphelele silinganiso sesici sato tonkhe titfombe kubala igridi. Lamaciniso aphumela ekugcumeni kwetintfo uma letinye titfombe tikulungele kantsi letinye atikulungele. Lapho kunetitfombe letinyenti, kungaba ngulomphumela locasulako kakhulu.
Kuvimbela loku kutiphatsa, vele usethe width kanye netimfanelo height kuto tonkhe tintfo img . Kubalulekile kusetha emanani lafanele esitfombeni ngasinye, ngaphandle kwaloko titfombe titawuhlaneketela. Emanani lafanele bubanti nebudze besitfombe lesilandzelanako:
<div class="gridzy">
<img src="https://loremflickr.com/640/480?random=1" width="640" height="480" alt="a random image" />
<img src="https://loremflickr.com/480/640?random=2" width="480" height="640" alt="another random image" />
<img src="https://loremflickr.com/640/640?random=3" width="640" height="640" alt="yet another random image" />
<img src="https://loremflickr.com/640/480?random=4" width="640" height="480" alt="a random image again" />
<img src="https://loremflickr.com/640/480?random=5" width="640" height="480" alt="one last random image" />
</div>Ngemuva kwaloko Gridzy angabala igridi ngekushesha ngaphandle kwesidzingo sekwati emasayizi mbamba etitfombe.
Kulayisha lokuvilaphako
Kulayisha titfombe kuphela letisendzaweni yekubuka lebonakalako, vele ulandele letinyatselo:
- Faka timphawu
heightwidthnjengobe kuchaziwe ngenhla (ciniseka kutsi usebentisa emanani lafanele) - Faka esikhundleni sato tonkhe timfanelo
srcngedata-gridzylazysrcnjengobe kukhonjisiwe ngetansi (uma unetimfanelosrcsetfutsi, tifake esikhundleni se-data-gridzylazysrcset).
<div class="gridzy">
<img data-gridzylazysrc="https://loremflickr.com/640/480?random=1" width="640" height="480" alt="a random image" />
<img data-gridzylazysrc="https://loremflickr.com/480/640?random=2" width="480" height="640" alt="another random image" />
<img data-gridzylazysrc="https://loremflickr.com/640/640?random=3" width="640" height="640" alt="yet another random image" />
<img data-gridzylazysrc="https://loremflickr.com/640/480?random=4" width="640" height="480" alt="a random image again" />
<img data-gridzylazysrc="https://loremflickr.com/640/480?random=5" width="640" height="480" alt="one last random image" />
</div>Ngemuva kwaletinyatselo titfombe titawulayisha ngekushesha nje nasetisedvute noma ngekhatsi kwe-viewport.
Inkomba yenchubo
Inkomba yenchubo yi-icon lencane le-animated levela ngesikhatsi sitfombe silayisha. Uma usebentisa emagama labhalwe phansi & tikhumba , inkomba yenchubo itawukhonjiswa ngekuzenzakalela. Ngaphandle kwaloko udzinga tingucuko letitsite:
- Faka intfo ngayinye
imgibe yintfo yediv
(noma kunobe nguyiphi lenye intfo – bona i-HTML ye-semantic kute utfole kabanti) - Faka i
gridzyImageyekilasi ku-elementi ngayinyeimg
<div class="gridzy">
<div><img src="https://loremflickr.com/640/480?random=1" class="gridzyImage" alt="a random image" /></div>
<div><img src="https://loremflickr.com/480/640?random=2" class="gridzyImage" alt="another random image" /></div>
<div><img src="https://loremflickr.com/640/640?random=3" class="gridzyImage" alt="yet another random image" /></div>
<div><img src="https://loremflickr.com/640/480?random=4" class="gridzyImage" alt="a random image again" /></div>
<div><img src="https://loremflickr.com/640/480?random=5" class="gridzyImage" alt="one last random image" /></div>
</div>Ngemuva kwaloko kufanele ubone tinkhomba tenchubo uma titfombe titsatsa sikhatsi sekulayisha.
Tihlungi
Tihlungi ku Gridzy tilula kakhulu kepha tinemandla. Akunandaba kutsi nguluphi luhlobe lwesihlungi loludzingako, kungenteka kakhulu kutsi luyabonakala. Konkhe lokudzingako, i-CSS lencane kanye netintfo letimbalwa tefomu le-HTML ...
Nasi sibonelo lesisebentako:
<div id="myFilterControls">
<button value="*">All</button>
<button value=".animals">Animals</button>
<button value=".architecture">Architecture</button>
<button value=".people">People</button>
</div>
<div class="gridzy" data-gridzy-filterControls="#myFilterControls button">
<img class="animals" src="https://loremflickr.com/640/480/animals?random=1" alt="a random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=1" alt="a random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=1" alt="a random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=2" alt="another random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=2" alt="another random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=2" alt="another random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=3" alt="yet another random animal image" />
</div>Asikwakheni Sinyatselo ngeSinyatselo
1. Kwekucala sidzinga sakhiwo se-HTML lesivamile se-Gridzy bese sibeka emagama emakilasi kuto tonkhe tintfo tegalari kute sikhone kutihlunga ngemuva kwaloko .
<div class="gridzy">
<img class="animals" src="https://loremflickr.com/640/480/animals?random=1" alt="a random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=1" alt="a random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=1" alt="a random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=2" alt="another random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=2" alt="another random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=2" alt="another random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=3" alt="yet another random animal image" />
</div>Kulesi sibonelo sisebentisa kuphela liklasi linye element ngayinye. Kepha ungaphindze usethe emakilasi lamanyenti e-elementi yinye, uma ngabe leyo element kufanele itfolakale ngetihlungi letinyenti.
2. Bese sengeta letinye tinkinobho lapho singashintja khona tihlungi ke .
<button value="*">All</button>
<button value=".animals">Animals</button>
<button value=".architecture">Architecture</button>
<button value=".people">People</button>
<div class="gridzy">
<img class="animals" src="https://loremflickr.com/640/480/animals?random=1" alt="a random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=1" alt="a random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=1" alt="a random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=2" alt="another random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=2" alt="another random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=2" alt="another random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=3" alt="yet another random animal image" />
</div>Esikhundleni setinkinobho, ungaphindze usebentise letinye tintfo tefomu letifana nemabhokisi ekuhlola, tinkinobho temsakato, emasimu lakhetsiwe njalonjalo.
Njengobe ubona, emanani etinkinobho avamile CSS selectors. Ngekushesha nje nasicedzile, kuchofota inkinobho lenjalo kutawukhombisa titfombe letihambisana naleyo CSS selector. Ngekwebuchwepheshe kumane kubeka inketho filter kuleli nani.
Ungaphindze usebentise tikhetsi letiyinkimbinkimbi kakhulu. Sibonelo :not(.animals) bekungasebenta futsi, kanye .animals.people kanye .animals, .people .
3. Ekugcineni, sifaka tinkinobho esitjeni div bese siyatibopha kugalari ye-Gridzy, ngekubeka inketho filterControls :
<div id="myFilterControls">
<button value="*">All</button>
<button value=".animals">Animals</button>
<button value=".architecture">Architecture</button>
<button value=".people">People</button>
</div>
<div class="gridzy" data-gridzy-filterControls="#myFilterControls button">
<img class="animals" src="https://loremflickr.com/640/480/animals?random=1" alt="a random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=1" alt="a random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=1" alt="a random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=2" alt="another random animal image" />
<img class="architecture" src="https://loremflickr.com/640/480/arch?random=2" alt="another random architecture image" />
<img class="people" src="https://loremflickr.com/640/480/people?random=2" alt="another random people image" />
<img class="animals" src="https://loremflickr.com/640/480/animals?random=3" alt="yet another random animal image" />
</div>Njengobe ubona, siphindze sisebentise umkhetsi we-CSS wenketho ye filterControls . Lesitja div lesinemfanelo id sisebenta kuphela kwenta tinkinobho tibe lula kutikhetsa ngaleso sikhetsi se-CSS.
Nguloko!
Uma unconota sisombululo se-JavaScript, hlola i -API .
I-API
Noma iGridzy ine-API yayo, tintfo letinyenti tingenziwa ngaphandle kwayo, ngekutsi nje uphatse kabi i-DOM. Gridzy utawubona bese ulungisa igridi. Kepha kukhona ne-API lenemandla kakhulu ...
Kuphatsa kabi i-DOM
Kuwo onkhe ema-Document Object Model (DOM) ekuphatfwe kabi sicala ngekudzinga intfo yesitja:
// get the container element
var gridzyElement = document.querySelector('.gridzy');Ngeta titfombe
Kubalulekile kwakha ngalokugcwele futsi ugcwalise intfo lensha yemntfwana ngaphambi kwekutsi uyifake ku-elementi yesitja. Ngaphandle kwaloko Gridzy akakhoni kutfola tilinganiso letifanele.
// create a new img element
var newImage = document.createElement('img');
// add src attribute (!! before you add it to the container element !!)
newImage.src = 'https://loremflickr.com/640/480';
// add it as last element to the container element
gridzyElement.appendChild(newImage);
// or as first element (or anywhere in between)
gridzyElement.insertBefore(newImage, gridzyElement.firstChild);Susa titfombe
// remove the first image
gridzyElement.removeChild(gridzyElement.firstElementChild);Shintja lokukhetsako
// change the spaceBetween option to a specific value
gridzyElement.setAttribute('data-gridzy-spaceBetween', '10');
// change the layout option to a specific value
gridzyElement.setAttribute('data-gridzy-layout', 'waterfall');
// reset the spaceBetween option to its default value
gridzyElement.removeAttribute('data-gridzy-spaceBetween');Kabanti mayelana nekusebentisa i-DOM ungakutfola ku -MDN web docs . Kukhona neSingeniso se-DOM lesikhona.
I-API yebunikati
Kusebentisa i-API, sicale sidzinga sibonelo se-Gridzy, lesiboshelwe ku-elementi yesitja se-Gridzy:
// get the Gridzy instance
var gridzyInstance = document.querySelector('.gridzy').gridzy;Tfola Inketho
// get the value of a single option
var currentLayout = gridzyInstance.getOption('layout');Tfola tonkhe tintfo letingakhetfwa
// get all option values as an object
var currentOptions = gridzyInstance.getOptions();Setha tintfo letingakhetfwa
// set specific option values
gridzyInstance.setOptions({
spaceBetween: 10,
layout: 'waterfall'
});
// or reset options to their default values
gridzyInstance.setOptions({
spaceBetween: null,
layout: null
});Faka Sihlungi
Kusebentisa luhlu kumane nje kubeka filter lwekukhetsa lolungaba ngunobe ngumuphi umkhetsi we-CSS losebentako:
// set the filter to match items with class "animals"
gridzyInstance.setOptions({
filter: '.animals'
});
// reset the filter to match all items again
gridzyInstance.setOptions({
filter: '*'
});
// set the filter to match items without class "animals"
gridzyInstance.setOptions({
filter: ':not(.animals)'
});
// set the filter to match items with class "animals" or "people"
gridzyInstance.setOptions({
filter: '.animals, .people'
});
// set the filter to match items that have both classes, "animals" and "people"
gridzyInstance.setOptions({
filter: '.animals.people'
});Ngeta Imisebenti Yekubita
KUKHONA kusukela ngenguqulo 2.4.0
Sebentisa Imicimbi yesimanje nalegucugucukako esikhundleni saloko. Bona sigaba lesilandzelako kute utfole imininingwane.
Gridzy.js 2 isekela letinye tintfo letingakhetfwa temisebenti yekushayela emuva. Tingasethwa kuphela nge-API yemphahla, kepha njengaletinye tintfo letingakhetfwa:
// same as set other options
gridzyInstance.setOptions({
onOptionsChanged: function() {
// will be executed each time the options have changed.
},
onBeforeOptionsChanged: function() {
// will be executed, before new options take effect.
}
});Sebentisa imicimbi
kusukela inguqulo 2.4.0
Ungasebentisa imicimbi yeGridzy njengemicimbi levamile yeJavaScript:
document.addEventListener('gridzyOptionsChanged', function(event) {
// will be executed each time the options have changed.
});
document.addEventListener('gridzyBeforeOptionsChanged', function(event) {
// will be executed, before new options take effect.
});Letinye tigameko tidutshulwa ku-elementi yesitja se-Gridzy kantsi letinye tigameko tidutshulwa ku-elementi yentfo ngayinye ngaphakatsi kwe-elementi yesitja.
Imicimbi ledutshulwe ku-elementi yesitja se-Gridzy:
event.target inikeza intfo yesitja seGridzy.
event.detail.instance iniketa sibonelo seGridzy.
Imicimbi ledutshulwe etintfweni:
event.target inikeza intfo lehambisanako.
event.detail.instance iniketa sibonelo seGridzy.
I-API – Yemhlaba wonkhe
Kukhona leminye imisebenti letimele Gridzy tikhatsi. Ngako-ke asidzingi kutfola sibonelo ngaphambili.
Tfola Inketho Levamile
// get the default value of a single option
var defaultLayout = Gridzy.getDefaultOption('layout');Tfola Tonkhe Tintfo Letikhetsiwe
// get all default option values as an object, including the default layout options of the default layout
var defaultOptions = Gridzy.getDefaultOptions();
// or get all default option values, including the default layout options of a specific layout
var defaultOptions = Gridzy.getDefaultOptions('waterfall');Setha Tintfo Letikhetsiwe
Loku akubeki tintfo letikhetsiwe tato tonkhe tigameko teGridzy letivele ticaliswe, kepha kuchaza sisekelo setigameko letinsha. Kepha, uma inketho yesibonelo lesikhona beyitawusethwa kabusha ngekusebentisa inani null , beyitawusebentisa linani lelisha lelijwayelekile.
// set default option values
Gridzy.setDefaultOptions({
spaceBetween: 10,
layout: 'waterfall'
});Ungasebentisa loku kusetha tintfo letikhetsiwe emhlabeni wonkhe, uma uyibita ngaphambi kwekutsi i-DOM ilungele. Ngako-ke bekungeke kusadzingeka kutsi usethe tintfo letikhetsiwe njengetimfanelo.
Tintfo letentekelako
Uma nje tonkhe tintfo letizenzakalelayo te-Gridzy.js 2 tisebenta, kute sidzingo setindlela letingezansi. Kepha ema-automatisms angacinywa kusebentisa iGridzy ngendlela yendabuko kakhulu:
// disable automatic initializations
Gridzy.setDefaultOptions({
autoInitOnDomReady: false,
autoInitOnDomMutation: false
});
// or switch off all mutation observers
Gridzy.setDefaultOptions({
autoInitOnDomMutation: false,
autoSyncChildListMutation: false,
autoSyncAttributesMutation: false,
autoSyncChildClassMutation: false,
autoSyncImageMutation: false
});Letinye taletintfo letikhetsiwe atikhoni kusethwa nge data-gridzy- timfanelo noma nge setOptions() , ngenca yetizatfu letinengcondvo:
Cala ngesandla
// initialize a new Gridzy instance
var gridzyInstance = new Gridzy(document.querySelector('.gridzy'), {
spaceBetween: 10,
layout: 'waterfall'
});Bhidlita Sibonelo
Cishe watsi, lokuphambene nekucala Gridzy.
gridzyInstance.destroy();
gridzyInstance = null;Vumelanisa Luhla Lwebantfwana Ngesandla
// after child elements (images) are added to or removed from the DOM.
gridzyInstance.syncChildList();Vumelanisa Sici Semntfwana Lomunye Ngesandla
Imvamisa akudzingeki, ngaphandle kwetikhatsi letingakavami kakhulu.
// after child elements (images) are added to the DOM and only one of them should be synced to Gridzy.
gridzyInstance.syncChild(childElement);Vumelanisa Timphawu Ngesandla
Caphela kutsi useOptionAttributes inketho kumele ibe true kulokhu.
// after data-gridzy- attributes have changed
gridzyInstance.syncAttributes();Kuhumusha Ngemandla
Imvamisa akudzingeki, noma ngabe onkhe ema-automatics acinywe
gridzyInstance.render();