వెబ్సైట్ స్వయంచాలకంగా అనువదించబడింది. ఏదైనా స్పష్టంగా తెలియకపోతే, దయచేసి ఆంగ్ల డాక్యుమెంటేషన్ను చూడండి.
ప్రాథమిక వినియోగం
గ్రిడ్జీ ఫైల్లను మీ సర్వర్కి అప్లోడ్ చేయండి మరియు వాటిని మీ వెబ్సైట్కి జోడించండి (సాధారణంగా హెడ్ సెక్షన్లో):
<link rel="stylesheet" href="gridzy/gridzy.min.css" />
<script src="gridzy/gridzy.min.js"></script>HTML కోడ్ని జోడించండి (బాడీ విభాగంలో ఎక్కడైనా):
<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>అంతే! ఇది పూర్తిగా ఫంక్షనల్ ఉదాహరణ. అదనపు ప్రారంభించాల్సిన అవసరం లేదు.
ఆకృతీకరణ
గ్రిడ్జీని కాన్ఫిగర్ చేయడానికి సులభమైన మార్గం, కేవలం HTML అట్రిబ్యూట్లను ఉపయోగించడం. మీరు ఎంపిక పేర్లను data-gridzy- తో మాత్రమే ప్రిఫిక్స్ చేయాలి. కాబట్టి, spaceBetween ఎంపికను సెట్ చేయడానికి, 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>ప్రధాన ఎంపికలు
Justified లేఅవుట్ ఎంపికలు
Waterfall లేఅవుట్ ఎంపికలు
మరిన్ని అధునాతన ఎంపికలు
మరింత అధునాతన ఎంపికల కోసం, APIని తనిఖీ చేయండి.
సెమాంటిక్ HTML
Gridzy యొక్క సరళమైన HTML నిర్మాణం ఇది:
<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>అయితే, Gridzy చాలా సరళమైనది మరియు మీరు దాదాపు ఏదైనా ఇతర HTML నిర్మాణాన్ని ఉపయోగించవచ్చు. పరిగణించవలసిన కొన్ని పాయింట్లు మాత్రమే ఉన్నాయి:
- కంటైనర్ మూలకం యొక్క ప్రతి బిడ్డ గ్రిడ్లోని ఒక అంశాన్ని సూచిస్తుంది.
- కంటైనర్ ఎలిమెంట్ మరియు దాని పిల్లలు రెండూ
ulమరియుliవంటి ఏదైనా ట్యాగ్ రకం కావచ్చు (బ్రౌజర్ డిఫాల్ట్లను రీసెట్ చేయడానికి పరిగణించండి). - ఒక
imgమూలకం నేరుగా చైల్డ్ కాకపోతే, దానికి తరగతిgridzyImageఅవసరం.
కాబట్టి ఇది కూడా పని చేసే HTML నిర్మాణం:
<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>ప్రత్యేకించి మీరు శీర్షికలను జోడించాలనుకుంటే, మీకు అధునాతన HTML నిర్మాణం అవసరం. దీని గురించి మరింత తెలుసుకోవడానికి, శీర్షికలు & స్కిన్లను చూడండి.
శీర్షికలు & స్కిన్లు
మీరు మీ గ్యాలరీకి శీర్షికలను జోడించాలనుకుంటే, మీరు రూపాన్ని నిర్వచించాలి. అందువల్ల, కొన్ని ముందే నిర్వచించిన తొక్కలు అందుబాటులో ఉన్నాయి. ప్రతి చర్మం ఒక CSS ఫైల్ను కలిగి ఉంటుంది. మీరు ఈ ఫైల్ను ప్రధాన గ్రిడ్జీ ఫైల్లకు అదనంగా జోడించాలి (సాధారణంగా హెడ్ విభాగంలో):
<link rel="stylesheet" href="gridzy/skins/gridzySkinClassic/style.min.css" />ఇంకా మీకు అధునాతన HTML నిర్మాణం అవసరం:
<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>మీరు HTML నిర్మాణం గురించి ఆలోచిస్తున్నట్లయితే, సెమాంటిక్ HTMLని పరిశీలించండి.
క్యాప్షన్ కోసం మీరు ఏ రకమైన ట్యాగ్ని అయినా ఉపయోగించవచ్చు, దానికి క్లాస్ gridzyCaption ఉందని నిర్ధారించుకోండి. img మూలకానికి క్లాస్ gridzyImage అవసరం.
పై ఉదాహరణ మీకు స్కిన్ gridzySkinClassic చూపుతుంది. వేరొక దానిని ఉపయోగించడానికి, చర్మం పేరును వీటిలో ఒకదానితో భర్తీ చేయండి:
స్కిన్స్ చేర్చబడ్డాయి
| అందుబాటులో ఉన్న తరగతులు | |
|---|---|
| gridzySkinBlank సొంత చర్మాన్ని సృష్టించుకోవడానికి మంచి ప్రారంభ స్థానం ప్రత్యక్ష ప్రివ్యూ | gridzySkinBlank |
| gridzySkinClassic ప్రత్యక్ష ప్రివ్యూ | gridzySkinClassic(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
| gridzySkinFullOverlay ప్రత్యక్ష ప్రివ్యూ | gridzySkinFullOverlay(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
| gridzySkinLift ప్రత్యక్ష ప్రివ్యూ | gridzySkinLift(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
| gridzySkinMagnifier జూమ్ కార్యాచరణ చేర్చబడలేదు ప్రత్యక్ష ప్రివ్యూ | gridzySkinMagnifier(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
పైన పేర్కొన్న అన్ని స్కిన్లకు CSS ఫైల్ మాత్రమే అవసరం, కానీ జావాస్క్రిప్ట్ ఫైల్ అవసరమయ్యే అదనపు స్కిన్లు కూడా ఉన్నాయి:
<link rel="stylesheet" href="gridzy/skins/gridzySkinBlur/style.min.css" />
<script src="gridzy/skins/gridzySkinBlur/script.min.js"></script>| అందుబాటులో ఉన్న తరగతులు | |
|---|---|
| gridzySkinBlur IEలో పని చేయదు ప్రత్యక్ష ప్రివ్యూ | gridzySkinBlur(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
| gridzySkinCard ప్రత్యక్ష ప్రివ్యూ | gridzySkinCard(వెర్షన్ 2.6.0 నుండి నిలిపివేయబడింది) |
స్కిన్ ఎంపికలు
వెర్షన్ 2.6.0 నుండి అంతర్నిర్మిత స్కిన్లను కాన్ఫిగర్ చేయడానికి ఎంపికలు ఉన్నాయి. నిర్దిష్ట చర్మంపై ఆధారపడి మీరు నేపథ్య రంగు, వచన రంగు మరియు వచన నీడను సెట్ చేయవచ్చు. మీరు ఇక్కడ చూడగలిగే విధంగా మీరు CSS అనుకూల లక్షణాలను ఉపయోగించాలి:
<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>ప్రతి స్కిన్ కోసం సపోర్ట్ చేయబడిన వేరియబుల్స్ మరియు డిఫాల్ట్ విలువలను ఇక్కడ చూడండి:
gridzySkinClassic
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
--text-shadow | none | ఏదైనా CSS టెక్స్ట్-షాడో విలువను అనుమతిస్తుంది |
gridzySkinFullOverlay
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
--text-shadow | none | ఏదైనా CSS టెక్స్ట్-షాడో విలువను అనుమతిస్తుంది |
gridzySkinLift
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
--text-shadow | 0 0 10px rgb(0, 0, 0), 0 0 20px rgb(0, 0, 0), 0 0 30px rgb(0, 0, 0) | ఏదైనా CSS టెక్స్ట్-షాడో విలువను అనుమతిస్తుంది |
gridzySkinMagnifier
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
ఈ చర్మం --text-shadow మద్దతు ఇవ్వదు
gridzySkinBlur
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, .7) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
--text-shadow | 0 0 10px rgb(0, 0, 0) | ఏదైనా CSS టెక్స్ట్-షాడో విలువను అనుమతిస్తుంది |
gridzySkinCard
| వేరియబుల్ | డిఫాల్ట్ విలువ | సమాచారం |
|---|---|---|
--background | rgba(0, 0, 0, 1) | ఏదైనా CSS నేపథ్య విలువను అనుమతిస్తుంది |
--color | rgb(255, 255, 255) | ఏదైనా CSS రంగు విలువను అనుమతిస్తుంది |
--text-shadow | none | ఏదైనా CSS టెక్స్ట్-షాడో విలువను అనుమతిస్తుంది |
అన్ని ముందే నిర్వచించబడిన స్కిన్లు సాధారణ వచన శీర్షికలకు మాత్రమే మద్దతు ఇస్తాయి. మీరు మీ స్వంత మరియు మరింత క్లిష్టమైన తొక్కలను సృష్టించవచ్చు. దయచేసి స్టైల్ గ్రిడ్జీని పరిశీలించండి.
శైలి గ్రిడ్జీ
ముందే నిర్వచించబడిన చర్మం మీ అవసరాలకు సరిపోకపోతే, మీరు మీ స్వంతంగా స్టైల్ చేసుకోవచ్చు.
సులభమయిన మార్గం ఏమిటంటే, ముందుగా ఉన్న చర్మాన్ని కాపీ చేసి మీ స్వంత అవసరాలకు అనుగుణంగా మార్చుకోవడం. ముందే నిర్వచించబడిన స్కిన్ gridzySkinBlank సాధారణంగా 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;
}CSS ఫైల్లో మీరు gridzySkinBlank , gridzyImage మరియు gridzyCaption తరగతులను కనుగొంటారు. గ్రిడ్జీకి ఈ తరగతులు అవసరం లేదు. అవి స్టైలింగ్ కోసం మాత్రమే ఉపయోగించబడతాయి మరియు మీకు నచ్చితే వాటిని తీసివేయవచ్చు లేదా పేరు మార్చవచ్చు.
అదనంగా మీరు CSS క్లాస్ gridzyItem కనుగొంటారు. Gridzy ఈ తరగతిని ప్రధాన కంటైనర్ మూలకం యొక్క అన్ని ప్రత్యక్ష పిల్లలకు స్వయంచాలకంగా సెట్ చేస్తుంది. కాబట్టి, మీరు మీ గ్యాలరీలోని అంశాలను స్టైల్ చేయడానికి ఈ తరగతిని ఉపయోగించవచ్చు.
ముఖ్యమైన విషయాలను గుర్తుంచుకోండి
- అంశం కంటెంట్లు పూర్తిగా ప్రతిస్పందించేలా ఉండాలి. మూలకం పరిమాణం ఖచ్చితంగా మారుతుందని పరిగణించండి. పిక్సెల్ విలువలకు బదులుగా శాతం విలువలను ఉపయోగించండి. మరియు గ్రిడ్జీ లేఅవుట్ ఎంపిక
autoFontSizeపరిశీలించండి, ఇది ఫాంట్-సైజ్ని ఐటెమ్ బాక్స్ పరిమాణంపై బంధిస్తుంది. - ప్రతి అంశం బాగా నిర్వచించబడిన కారక నిష్పత్తిని కలిగి ఉండాలి. అంశం యొక్క కారక నిష్పత్తి ఎప్పటికీ మారదు మరియు గ్రిడ్ను లెక్కించడానికి ఇది అవసరం. కాబట్టి ఒక అంశం స్వయంచాలకంగా బాగా నిర్వచించబడిన కారక నిష్పత్తిని కలిగి ఉండకపోతే, దానిని మాన్యువల్గా ముందే నిర్వచించండి (ఉదా css ద్వారా).
కొన్ని సందర్భాల్లో, గ్రిడ్జీ ప్రారంభించే ముందు అంశాల కంటెంట్ను స్టైల్ చేయడం సులభం కావచ్చు. దీని కోసం తాత్కాలికంగా class gridzy లేదా Gridzy javascript ఫైల్ని తీసివేయండి.
అంతే! మీరు మీ స్వంత చర్మాన్ని నిర్మించుకోవాలి అంతే. చాలా ముందే నిర్వచించబడిన స్కిన్లు దీని కంటే ఎక్కువగా ఉపయోగించవు.
కానీ మీరు ఇష్టపడితే ఇంకా ఎక్కువ ఉండవచ్చు…
అధునాతన స్కిన్స్
Gridzy కేవలం gridzyItem కంటే ఎక్కువ CSS తరగతులను ఉపయోగిస్తుంది. వాటిలో చాలా వరకు స్వయంచాలకంగా సెట్ చేయబడతాయి మరియు మీరు వాటిని స్టైలింగ్ కోసం కూడా ఉపయోగించవచ్చు.
ప్రధాన కంటైనర్ తరగతులు
| తరగతి పేరు | వివరణ |
|---|---|
gridzyమానవీయంగా సెట్ చేయడానికి | గ్రిడ్జీ స్వయంచాలకంగా ఈ తరగతితో మూలకాలను కనుగొంటుంది మరియు వాటిని ప్రారంభిస్తుంది. |
gridzyAnimated | animate ఎంపిక true స్వయంచాలకంగా సెట్ చేయబడుతుంది. ఈ తరగతిని మాన్యువల్గా సెట్ చేసినట్లయితే, animate ఎంపిక స్వయంచాలకంగా true అవుతుంది (ఇది స్పష్టంగా false సెట్ చేయబడితే తప్ప). |
అంశం తరగతులు
| తరగతి పేరు | వివరణ |
|---|---|
gridzyItem | అంశం ప్రారంభించే ప్రక్రియను ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది. ఎప్పటికీ తీసివేయబడదు. |
gridzyItemInitializing | అంశం ప్రారంభించే ప్రక్రియను ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది. అంశం పూర్తిగా ప్రారంభించబడిన వెంటనే gridzyItemReady ద్వారా భర్తీ చేయబడుతుంది. అంటే ఇమేజ్లు పూర్తిగా లోడ్ అయ్యాయని కాదు ( gridzyItemLoading చూడండి), కానీ అంశం కనిపించేలా సిద్ధంగా ఉంది. |
gridzyItemReady | అంశం పూర్తిగా ప్రారంభించబడిన వెంటనే gridzyItemInitializing భర్తీ చేయబడుతుంది. ఎప్పటికీ తీసివేయబడదు. అంటే ఇమేజ్లు పూర్తిగా లోడ్ అయ్యాయని కాదు ( gridzyItemComplete చూడండి), కానీ అంశం కనిపించేలా సిద్ధంగా ఉంది. |
gridzyItemLoading | అంశం ప్రారంభించే ప్రక్రియను ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది. కలిగి ఉన్న చిత్రాలు (సాధారణంగా ఒకటి మాత్రమే) పూర్తిగా లోడ్ అయిన వెంటనే gridzyItemComplete ద్వారా భర్తీ చేయబడుతుంది. |
gridzyItemComplete | కలిగి ఉన్న ఇమేజ్లు (సాధారణంగా ఒకటి మాత్రమే) పూర్తిగా లోడ్ అయిన వెంటనే gridzyItemLoading భర్తీ చేస్తుంది. ఎప్పటికీ తీసివేయబడదు. |
gridzyItemInitialToVisible | అంశం మొదటిసారి కనిపించడం ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది. అంశం పూర్తిగా కనిపించిన వెంటనే తీసివేయబడుతుంది. |
gridzyItemVisible | అంశం పూర్తిగా కనిపించిన వెంటనే సెట్ చేయబడుతుంది. అంశం అదృశ్యం కావడం ప్రారంభించిన వెంటనే తీసివేయబడుతుంది. |
gridzyItemVisibleToHidden | అంశం కనిపించకుండా పోవడం ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది. అంశం పూర్తిగా దాచబడిన వెంటనే తీసివేయబడుతుంది. |
gridzyItemHidden | అంశం పూర్తిగా దాచబడిన వెంటనే సెట్ చేయబడుతుంది. అంశం కనిపించడం ప్రారంభించిన వెంటనే తీసివేయబడుతుంది. |
gridzyItemHiddenToVisible | అంశం కనిపించడం ప్రారంభించిన వెంటనే సెట్ చేయబడుతుంది (మొదటిసారి కనిపించడం మినహా – తరగతి gridzyItemInitialToVisible చూడండి). అంశం పూర్తిగా కనిపించిన వెంటనే తీసివేయబడుతుంది. |
gridzyItemVisibleToVisible | గ్రిడ్లో ఏదైనా మార్పు వచ్చిన వెంటనే సెట్ చేయబడుతుంది, కానీ ఐటెమ్ అలాగే అలాగే కనిపిస్తుంది. మార్పు యానిమేషన్ పూర్తయిన వెంటనే తీసివేయబడుతుంది. |
డిఫాల్ట్గా ప్రాసెస్ సూచిక మరియు ఇమేజ్లు కనిపించడం మరియు అదృశ్యం కావడం కోసం యానిమేషన్లు Gridzy ప్రధాన CSS ఫైల్ ద్వారా ముందే నిర్వచించబడ్డాయి.
పైన పేర్కొన్న ఈ CSS తరగతులతో మీరు మీ స్వంత ప్రాసెస్ సూచిక మరియు యానిమేషన్లను స్టైల్ చేయవచ్చు. గ్రిడ్జీ ప్రధాన CSS ఫైల్ను పరిశీలించడానికి ధైర్యం చేయండి, మీరు ఏమి భర్తీ చేయాలో అర్థం చేసుకోండి. భయం లేదు, ప్రతిదీ అక్కడ చక్కగా నమోదు చేయబడింది.
లోడ్ చేయడాన్ని ఆప్టిమైజ్ చేయండి
మీరు అనేక చిత్రాలను ఉపయోగిస్తుంటే, గ్రిడ్ని వేగంగా నిర్మించడంలో గ్రిడ్జీకి సహాయపడటం మంచిది.
జంపింగ్ చిత్రాలను నిరోధించండి
గ్రిడ్ను గణించడానికి గ్రిడ్జీకి ఖచ్చితంగా అన్ని చిత్రాల కారక నిష్పత్తి అవసరం. ఈ వాస్తవం కొన్ని చిత్రాలు సిద్ధంగా ఉంటే మరియు మరికొన్ని లేనట్లయితే జంపింగ్ ఎలిమెంట్లకు దారి తీస్తుంది. ఎక్కువ చిత్రాలు ఉంటే, ఈ ప్రభావం మరింత బాధించేదిగా ఉంటుంది.
ఈ ప్రవర్తనను నిరోధించడానికి, అన్ని img మూలకాల కోసం width మరియు height లక్షణాలను సెట్ చేయండి. ప్రతి ఒక్క చిత్రానికి సరైన విలువలను సెట్ చేయడం ముఖ్యం, లేకపోతే చిత్రాలు వక్రీకరించబడతాయి. సరైన విలువలు సంబంధిత చిత్రం యొక్క అసలు వెడల్పు మరియు ఎత్తు:
<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>ఆ తర్వాత గ్రిడ్జీ చిత్రాల వాస్తవ పరిమాణాలను తెలుసుకోవాల్సిన అవసరం లేకుండా వెంటనే గ్రిడ్ను లెక్కించవచ్చు.
సోమరితనం లోడ్ అవుతోంది
కనిపించే వీక్షణపోర్ట్లో ఉన్న చిత్రాలను మాత్రమే లోడ్ చేయడానికి, ఈ దశలను అనుసరించండి:
- పైన వివరించిన విధంగా
widthమరియుheightలక్షణాలను చొప్పించండి (సరైన విలువలను ఉపయోగించాలని నిర్ధారించుకోండి) - దిగువ చూపిన విధంగా అన్ని
srcలక్షణాలనుdata-gridzylazysrcతో భర్తీ చేయండి (మీకుsrcsetఅట్రిబ్యూట్లు కూడా ఉంటే, వాటిని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>ఈ దశల తర్వాత, చిత్రాలు వీక్షణపోర్ట్కు సమీపంలో లేదా లోపల ఉన్న వెంటనే లోడ్ అవుతాయి.
ప్రక్రియ సూచిక
ప్రాసెస్ సూచిక అనేది చిత్రం లోడ్ అవుతున్నప్పుడు కనిపించే చిన్న యానిమేటెడ్ చిహ్నం. మీరు శీర్షికలు & స్కిన్లను ఉపయోగిస్తే, ప్రాసెస్ సూచిక స్వయంచాలకంగా చూపబడుతుంది. లేకపోతే, మీకు కొన్ని సర్దుబాట్లు అవసరం:
- ప్రతి
imgమూలకాన్ని ఒకdivమూలకంలో ఉంచండి
(లేదా ఏదైనా ఇతర మూలకంలో – మరిన్నింటి కోసం సెమాంటిక్ HTML చూడండి) - ప్రతి
imgమూలకానికి తరగతిgridzyImageజోడించండి
<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>ఆ తర్వాత ఇమేజ్లు లోడ్ కావడానికి సమయం తీసుకుంటే మీరు ప్రాసెస్ సూచికలను చూడాలి.
ఫిల్టర్లు
గ్రిడ్జీలోని ఫిల్టర్లు చాలా సరళమైనవి కానీ శక్తివంతమైనవి. మీకు ఎలాంటి ఫిల్టర్ అవసరం ఉన్నా, అది గ్రహించగలిగే అవకాశం ఉంది. మీకు కావలసిందల్లా, కొంచెం CSS మరియు కొన్ని HTML ఫారమ్ ఎలిమెంట్స్ …
ఇక్కడ ఒక ఫంక్షనల్ ఉదాహరణ:
<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>స్టెప్ బై స్టెప్ బిల్డ్ చేద్దాం
1. ముందుగా మనకు గ్రిడ్జీ యొక్క సాధారణ HTML నిర్మాణం అవసరం మరియు అన్ని గ్యాలరీ ఐటెమ్లకు తరగతి పేర్లను సెట్ చేయాలి కాబట్టి మేము వాటిని తర్వాత ఫిల్టర్ చేయవచ్చు
<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>ఈ ఉదాహరణలో మేము ప్రతి మూలకం కోసం ఒక తరగతిని మాత్రమే ఉపయోగిస్తాము. కానీ మీరు ఒకే మూలకం కోసం బహుళ తరగతులను కూడా సెట్ చేయవచ్చు, ఒకవేళ ఆ మూలకం బహుళ ఫిల్టర్ల ద్వారా కనుగొనబడాలి.
2. అప్పుడు మేము కొన్ని బటన్లను జోడిస్తాము, దాని ద్వారా మనం ఫిల్టర్లను మార్చవచ్చు
<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>బటన్లకు బదులుగా, మీరు చెక్బాక్స్లు, రేడియో బటన్లు, సెలెక్ట్ ఫీల్డ్లు మొదలైన ఇతర ఫారమ్ ఎలిమెంట్లను కూడా ఉపయోగించవచ్చు.
మీరు చూడగలిగినట్లుగా, బటన్ల విలువలు సాధారణ CSS సెలెక్టర్లు. మేము పూర్తి చేసిన వెంటనే, అటువంటి బటన్పై క్లిక్ చేస్తే ఆ CSS సెలెక్టర్కు సరిపోలే చిత్రాలను ప్రదర్శిస్తుంది. సాంకేతికంగా ఇది కేవలం ఈ విలువకు filter ఎంపికను సెట్ చేస్తుంది.
మీరు చాలా క్లిష్టమైన సెలెక్టర్లను కూడా ఉపయోగించవచ్చు. ఉదాహరణకు :not(.animals) కూడా పని చేస్తాయి, అలాగే .animals.people మరియు .animals, .people .
3. చివరగా, filterControls ఎంపికను సెట్ చేయడం ద్వారా మేము బటన్లను div కంటైనర్లో ఎన్క్యాప్సులేట్ చేస్తాము మరియు వాటిని గ్రిడ్జీ గ్యాలరీకి బంధిస్తాము:
<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>మీరు చూడగలిగినట్లుగా, మేము filterControls ఎంపిక కోసం CSS ఎంపిక సాధనాన్ని కూడా ఉపయోగిస్తాము. id అట్రిబ్యూట్తో ఉన్న div కంటైనర్ ఆ CSS సెలెక్టర్ ద్వారా బటన్లను సులభంగా ఎంచుకోవడానికి మాత్రమే ఉపయోగపడుతుంది.
అంతే!
మీరు JavaScript పరిష్కారాన్ని కావాలనుకుంటే, APIని తనిఖీ చేయండి.
API
Gridzy దాని స్వంత APIని కలిగి ఉన్నప్పటికీ, DOMని మార్చడం ద్వారా చాలా విషయాలు అది లేకుండా చేయవచ్చు. గ్రిడ్జీ దానిని గమనించి, గ్రిడ్ని సర్దుబాటు చేస్తాడు. కానీ చాలా శక్తివంతమైన API కూడా ఉంది…
DOMని మార్చడం
అన్ని డాక్యుమెంట్ ఆబ్జెక్ట్ మోడల్ (DOM) మానిప్యులేషన్ల కోసం మనకు ముందుగా కంటైనర్ ఎలిమెంట్ అవసరం:
// get the container element
var gridzyElement = document.querySelector('.gridzy');చిత్రాలను జోడించండి
మీరు కొత్త చైల్డ్ ఎలిమెంట్ను కంటైనర్ ఎలిమెంట్కు జోడించే ముందు దాన్ని పూర్తిగా బిల్డ్ చేయడం మరియు పూరించడం ముఖ్యం. లేకపోతే గ్రిడ్జీ సరైన కొలతలను గుర్తించలేదు.
// 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);చిత్రాలను తీసివేయండి
// remove the first image
gridzyElement.removeChild(gridzyElement.firstElementChild);ఎంపికలను మార్చండి
// 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');మీరు MDN వెబ్ డాక్స్లో కనుగొనగలిగే DOMని మానిప్యులేట్ చేయడం గురించి మరింత. DOMకి పరిచయం కూడా అందుబాటులో ఉంది.
యాజమాన్య API
APIని ఉపయోగించడానికి, మనకు ముందుగా Gridzy ఉదాహరణ అవసరం, ఇది Gridzy కంటైనర్ ఎలిమెంట్కు కట్టుబడి ఉంటుంది:
// get the Gridzy instance
var gridzyInstance = document.querySelector('.gridzy').gridzy;ఎంపికను పొందండి
// get the value of a single option
var currentLayout = gridzyInstance.getOption('layout');అన్ని ఎంపికలను పొందండి
// get all option values as an object
var currentOptions = gridzyInstance.getOptions();ఎంపికలను సెట్ చేయండి
// set specific option values
gridzyInstance.setOptions({
spaceBetween: 10,
layout: 'waterfall'
});
// or reset options to their default values
gridzyInstance.setOptions({
spaceBetween: null,
layout: null
});ఫిల్టర్ని వర్తింపజేయండి
ఫిల్టర్ని వర్తింపజేయడం అనేది ఏదైనా చెల్లుబాటు అయ్యే CSS సెలెక్టర్గా ఉండే ఆప్షన్ filter సెట్ చేస్తోంది:
// 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'
});కాల్బ్యాక్ ఫంక్షన్లను జోడించండి
వెర్షన్ 2.4.0 నుండి నిలిపివేయబడింది
బదులుగా ఆధునిక మరియు మరింత సౌకర్యవంతమైన ఈవెంట్లను ఉపయోగించండి. వివరాల కోసం తదుపరి విభాగాన్ని చూడండి.
Gridzy.js 2 కాల్బ్యాక్ ఫంక్షన్ల కోసం కొన్ని ఎంపికలకు మద్దతు ఇస్తుంది. అవి యాజమాన్య API ద్వారా మాత్రమే సెట్ చేయబడతాయి, కానీ ఇతర ఎంపికల మాదిరిగానే:
// 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.
}
});ఈవెంట్లను ఉపయోగించండి
వెర్షన్ 2.4.0 నుండి
మీరు సాధారణ జావాస్క్రిప్ట్ ఈవెంట్ల మాదిరిగానే గ్రిడ్జీ ఈవెంట్లను ఉపయోగించవచ్చు:
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.
});కొన్ని ఈవెంట్లు గ్రిడ్జీ కంటైనర్ ఎలిమెంట్పై మరియు ఇతర ఈవెంట్లు కంటైనర్ ఎలిమెంట్లోని వ్యక్తిగత ఐటెమ్ ఎలిమెంట్లపై కాల్చబడతాయి.
గ్రిడ్జీ కంటైనర్ మూలకంపై జరిగిన సంఘటనలు:
event.target Gridzy కంటైనర్ మూలకాన్ని అందిస్తుంది.
event.detail.instance Gridzy ఉదాహరణను అందిస్తుంది.
ఐటెమ్ ఎలిమెంట్స్పై జరిగిన ఈవెంట్లు:
event.target సంబంధిత అంశం మూలకాన్ని అందిస్తుంది.
event.detail.instance Gridzy ఉదాహరణను అందిస్తుంది.
API - గ్లోబల్
గ్రిడ్జీ ఉదంతాల నుండి స్వతంత్రంగా ఉండే కొన్ని విధులు ఉన్నాయి. కాబట్టి మనం ముందు ఉదాహరణ పొందవలసిన అవసరం లేదు.
డిఫాల్ట్ ఎంపికను పొందండి
// get the default value of a single option
var defaultLayout = Gridzy.getDefaultOption('layout');అన్ని డిఫాల్ట్ ఎంపికలను పొందండి
// 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');డిఫాల్ట్ ఎంపికలను సెట్ చేయండి
ఇది ఇప్పటికే ప్రారంభించబడిన అన్ని గ్రిడ్జీ ఉదంతాల ఎంపికలను సెట్ చేయదు, కానీ కొత్త ఉదాహరణల కోసం ఆధారాన్ని నిర్వచిస్తుంది. అయినప్పటికీ, ఇప్పటికే ఉన్న ఉదాహరణ యొక్క ఎంపికను విలువ null ద్వారా రీసెట్ చేయబడితే, అది కొత్త డిఫాల్ట్ విలువను ఉపయోగిస్తుంది.
// set default option values
Gridzy.setDefaultOptions({
spaceBetween: 10,
layout: 'waterfall'
});DOM సిద్ధంగా ఉండకముందే మీరు కాల్ చేస్తే, ప్రపంచవ్యాప్తంగా ఎంపికలను సెట్ చేయడానికి మీరు దీన్ని ఉపయోగించవచ్చు. కాబట్టి మీరు ఇకపై ఎంపికలను అట్రిబ్యూట్లుగా సెట్ చేయవలసిన అవసరం లేదు.
ఆటోమాటిజమ్స్
Gridzy.js 2 యొక్క అన్ని ఆటోమేటిజమ్లు సక్రియంగా ఉన్నంత వరకు, దిగువ పద్ధతుల అవసరం లేదు. కానీ గ్రిడ్జీని మరింత సాంప్రదాయ పద్ధతిలో ఉపయోగించడానికి ఆటోమేటిజమ్లను స్విచ్ ఆఫ్ చేయవచ్చు:
// 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
});తార్కిక కారణాల వల్ల ఈ ఎంపికలలో కొన్ని data-gridzy- లక్షణాల ద్వారా లేదా setOptions() ద్వారా సెట్ చేయబడవు:
మాన్యువల్గా ప్రారంభించండి
// initialize a new Gridzy instance
var gridzyInstance = new Gridzy(document.querySelector('.gridzy'), {
spaceBetween: 10,
layout: 'waterfall'
});ఉదాహరణను నాశనం చేయండి
గ్రిడ్జీని ప్రారంభించడానికి వ్యతిరేకం అని స్థూలంగా చెప్పబడింది.
gridzyInstance.destroy();
gridzyInstance = null;పిల్లల జాబితాను మాన్యువల్గా సమకాలీకరించండి
// after child elements (images) are added to or removed from the DOM.
gridzyInstance.syncChildList();సింగిల్ చైల్డ్ ఎలిమెంట్ని మాన్యువల్గా సింక్ చేయండి
చాలా అరుదైన సందర్భాల్లో తప్ప సాధారణంగా అవసరం లేదు.
// after child elements (images) are added to the DOM and only one of them should be synced to Gridzy.
gridzyInstance.syncChild(childElement);మాన్యువల్గా లక్షణాలను సమకాలీకరించండి
దీని కోసం useOptionAttributes ఎంపిక తప్పక true గమనించండి.
// after data-gridzy- attributes have changed
gridzyInstance.syncAttributes();ఫోర్స్ రెండరింగ్
అన్ని ఆటోమేటిజమ్లు ఆపివేయబడినప్పటికీ, సాధారణంగా అవసరం లేదు
gridzyInstance.render();