वेबसाइट के स्वतः अनुवाद हो गइल बा. अगर कुछ साफ नइखे त कृपया अंग्रेजी दस्तावेजन पर एक नजर डालीं.
बेसिक यूज के बारे में बतावल गइल बा
ग्रिड्जी फाइल सभ के अपना सर्वर पर अपलोड करीं आ अपना वेबसाइट पर जोड़ीं (आमतौर पर हेड सेक्शन में):
<link rel="stylesheet" href="gridzy/gridzy.min.css" />
<script src="gridzy/gridzy.min.js"></script>एचटीएमएल कोड (बॉडी सेक्शन में कहीं भी) जोड़ीं:
<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>इहे बा! ई एगो पूरा तरह से काम करे वाला उदाहरण बा. कवनो अतिरिक्त आरंभीकरण के जरूरत नइखे.
कॉन्फ़िगरेशन के बारे में बतावल गइल बा
ग्रिड्जी के कॉन्फ़िगर करे के सबसे आसान तरीका बा, बस एचटीएमएल एट्रिब्यूट के इस्तेमाल कईल। रउआँ के खाली विकल्प के नाँव के पहिले 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 लेआउट विकल्प बा
अउरी एडवांस विकल्प बा
अउरी उन्नत विकल्प खातिर, एपीआई देखल जाय।
सिमेंटिक एचटीएमएल के बा
ग्रिडजी के सभसे सरल एचटीएमएल संरचना ई बा:
<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>हालांकि ग्रिज़ी बहुत लचीला बा अवुरी आप लगभग कवनो अवुरी एचटीएमएल संरचना के इस्तेमाल क सकतानी। बस कुछ बिंदु पर विचार करे के बा:
- कंटेनर तत्व के हर चाइल्ड ग्रिड में एगो आइटम के प्रतिनिधित्व करेला।
- कंटेनर तत्व आ एकरे संतान दुनों कौनों भी टैग प्रकार के हो सके लें, जइसे कि
ulआli(बस ब्राउजर डिफ़ॉल्ट के रीसेट करे पर बिचार करीं)। - अगर कवनो
imgतत्व खुद डायरेक्ट चाइल्ड ना होखे तब ओकरा खातिरgridzyImageक्लास के जरूरत होला।
त ई एगो कामकाजी एचटीएमएल संरचना भी हवे:
<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>खासकर अगर रउरा कैप्शन जोड़ल चाहत बानी त रउरा एगो एडवांस एचटीएमएल स्ट्रक्चर के जरूरत बा. एकरा बारे में अउरी जाने खातिर कैप्शन एंड स्किन पर एक नजर डालीं।
कैप्शन अउर स्किन
अगर रउआँ अपना गैलरी में कैप्शन जोड़ल चाहत बानी त रउआँ के रूप परिभाषित करे के पड़ी। एह से कुछ पहिले से परिभाषित खाल उपलब्ध बा। हर स्किन में एगो सीएसएस फाइल होला। रउआँ के ई फाइल मुख्य ग्रिड्जी फाइल सभ के अलावा जोड़े के पड़ी (आमतौर पर हेड सेक्शन में):
<link rel="stylesheet" href="gridzy/skins/gridzySkinClassic/style.min.css" />एकरा अलावा रउआँ के एगो एडवांस एचटीएमएल संरचना के जरूरत बा:
<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>अगर रउआँ एचटीएमएल संरचना के बारे में सोचत बानी त सिमेंटिक एचटीएमएल पर एक नजर डालीं।
कैप्शन खातिर रउआ कवनो भी प्रकार के टैग के इस्तेमाल कर सकेनी, बस सुनिश्चित करीं कि ओकरा में 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 आईई में काम ना करेला लाइव पूर्वावलोकन के बा | 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) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--color | rgb(255, 255, 255) | कवनो भी CSS रंग मान के अनुमति देला |
--text-shadow | none | कवनो भी CSS टेक्स्ट-शैडो मान के अनुमति देला |
gridzySkinFullOverlay
| चर के बा | डिफ़ॉल्ट मान के बा | खबर |
|---|---|---|
--background | rgba(0, 0, 0, .7) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--color | rgb(255, 255, 255) | कवनो भी CSS रंग मान के अनुमति देला |
--text-shadow | none | कवनो भी CSS टेक्स्ट-शैडो मान के अनुमति देला |
gridzySkinLift
| चर के बा | डिफ़ॉल्ट मान के बा | खबर |
|---|---|---|
--background | rgba(0, 0, 0, .7) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--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) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--color | rgb(255, 255, 255) | कवनो भी CSS रंग मान के अनुमति देला |
ई स्किन --text-shadow सपोर्ट ना करे ला
gridzySkinBlur
| चर के बा | डिफ़ॉल्ट मान के बा | खबर |
|---|---|---|
--background | rgba(0, 0, 0, .7) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--color | rgb(255, 255, 255) | कवनो भी CSS रंग मान के अनुमति देला |
--text-shadow | 0 0 10px rgb(0, 0, 0) | कवनो भी CSS टेक्स्ट-शैडो मान के अनुमति देला |
gridzySkinCard
| चर के बा | डिफ़ॉल्ट मान के बा | खबर |
|---|---|---|
--background | rgba(0, 0, 0, 1) | कवनो भी सीएसएस बैकग्राउंड वैल्यू के अनुमति देला |
--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 मिल जाई। ग्रिड्जी एह क्लास के मुख्य कंटेनर तत्व के सभ डायरेक्ट चिल्ड्रेन पर स्वचालित रूप से सेट करे ला। त, रउआ एह क्लास के इस्तेमाल अपना गैलरी के आइटम के स्टाइल करे खातिर कर सकेनी।
मन के जरूरी बात बा
- आइटम के सामग्री पूरा तरह से रिस्पांसिव होखे के चाहीं. विचार करीं कि तत्व के आकार में जरूर बदलाव होई। पिक्सेल मान के बजाय प्रतिशत मान के इस्तेमाल करीं। आ ग्रिड्जी लेआउट विकल्प
autoFontSizeपर एक नजर डालीं, जवन फॉन्ट-साइज के आइटम बॉक्स साइज पर बाइंड करेला। - हर आइटम के एगो बढ़िया से परिभाषित आस्पेक्ट रेशियो होखे के चाहीं. आइटम के आस्पेक्ट रेशियो में कबो बदलाव ना आई आ एकर जरूरत ग्रिड के गणना करे खातिर होला। त अगर कवनो आइटम के स्वचालित रूप से बढ़िया से परिभाषित आस्पेक्ट रेशियो ना होखे त ओकरा के मैन्युअल रूप से पहिले से परिभाषित करीं (जइसे कि css के माध्यम से)।
कुछ मामिला में ग्रिड्जी के इनिशियलाइज करे से पहिले आइटम सभ के सामग्री के स्टाइल कइल आसान हो सके ला। बस एकरा खातिर क्लास gridzy या 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 | ग्रिड में कुछ बदलते सेट हो जाई, लेकिन आइटम खुद रहे अवुरी लउकत रही। बदलाव एनीमेशन खतम होखते हटा दिहल जाई। |
डिफ़ॉल्ट रूप से प्रोसेस इंडिकेटर आ लउके आ गायब होखे वाली इमेज सभ खातिर एनीमेशन सभ के ग्रिड्जी मुख्य 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तत्व में डाल दीं
(या कवनो अउरी तत्व में – अउरी जानकारी खातिर सिमेंटिक एचटीएमएल देखल जाय) - हर
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>एकरा बाद रउआँ के प्रक्रिया संकेतक देखे के चाहीं अगर छवि सभ के लोड होखे में समय लागे ला।
फिल्टर कइल जाला
ग्रिड्जी में फिल्टर काफी सरल बा लेकिन शक्तिशाली बा। चाहे रउरा कवनो तरह के फिल्टर के जरूरत होखे, बहुत संभावना बा कि इ एहसास होखे। बस जरूरत बा, तनी सीएसएस आ कुछ एचटीएमएल फॉर्म तत्व ...
इहाँ एगो कामकाजी उदाहरण दिहल गइल बा:
<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. सबसे पहिले हमनी के ग्रिड्जी के सामान्य एचटीएमएल स्ट्रक्चर के जरूरत बा आ सभ गैलरी आइटम खातिर क्लास के नाम सेट करीं जा ताकि हमनी के बाद में ओकरा के फिल्टर कर सकीले
<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. अंत में, हमनी के बटन के एगो div कंटेनर में कैप्सूल कर देनी जा आ Gridzy गैलरी से बाइंड कर देनी जा, 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>जईसे की रउवा देख सकत बानी कि हमनी के filterControls विकल्प खातिर CSS चयनकर्ता के भी इस्तेमाल करेनी जा। id एट्रिब्यूट वाला div कंटेनर खाली ओह CSS चयनकर्ता के माध्यम से बटन के चयन आसान बनावे के काम करेला।
इहे बा!
अगर रउआँ जावास्क्रिप्ट समाधान पसंद करीं, त एपीआई के देखल जाय।
एपीआई के बा
हालांकि ग्रिड्जी के आपन एपीआई बा, लेकिन अधिकांश काम एकरा बिना कईल जा सकता, सिर्फ डीओएम में हेरफेर क के। ग्रिडजी एकरा के नोटिस करीहें आ ग्रिड के एडजस्ट करीहें. लेकिन एकरा अलावे एगो बहुत शक्तिशाली एपीआई भी बा ...
डीओएम में हेरफेर कइल जा रहल बा
सभ डॉक्यूमेंट ऑब्जेक्ट मॉडल (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');DOM में हेरफेर करे के बारे में अउरी जानकारी रउआ MDN web docs पर पा सकेनी . एकरा अलावे डीओएम के परिचय भी उपलब्ध बा।
मालिकाना एपीआई के बा
एपीआई के इस्तेमाल करे खातिर, हमनी के पहिले ग्रिड्जी इंस्टेंस के जरूरत बा, जवन ग्रिड्जी कंटेनर तत्व से बाइंड बा:
// 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
});फिल्टर लगावे के बा
फिल्टर लागू कइल खाली विकल्प filter सेट कइल हवे जे कौनों भी वैध CSS चयनकर्ता हो सके ला:
// 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 कॉलबैक फंक्शन खातिर कुछ विकल्प के सपोर्ट करेला। इनहन के खाली मालिकाना एपीआई के माध्यम से सेट कइल जा सके ला, बाकी ठीक बाकी विकल्प सभ नियर:
// 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 ग्रिड्जी कंटेनर तत्व प्रदान करेला।
event.detail.instance ग्रिड्जी इंस्टेंस प्रदान करेला।
आइटम तत्वन पर फायर कइल गइल घटना:
event.target संबंधित आइटम तत्व प्रदान करेला।
event.detail.instance ग्रिड्जी इंस्टेंस प्रदान करेला।
एपीआई – ग्लोबल के बा
कुछ फंक्शन अइसन बाड़ें जे ग्रिड्जी इंस्टेंस से स्वतंत्र होलें। त हमनी के पहिले कवनो इंस्टेंस लेबे के जरूरत नइखे.
डिफ़ॉल्ट विकल्प मिल जाला
// 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();