ماڵپەڕەکە بە شێوەیەکی ئۆتۆماتیکی وەرگێڕدراوە. ئەگەر شتێک ڕوون نەبوو، تکایە سەیری بەڵگەنامە ئینگلیزییەکان بکە.
بەکارهێنانی بنەڕەتی
فایلەکانی Gridzy باربکە بۆ سەر سێرڤەرەکەت و زیادیان بکە بۆ ماڵپەڕەکەت (بەزۆری لە بەشی سەرەکی):
<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>ئەوە تەواو! ئەوە نموونەیەکی تەواو کاراییە. پێویست بە دەستپێکردنی زیادە ناکات.
ڕێکخستن
ئاسانترین ڕێگا بۆ ڕێکخستنی Gridzy ئەوەیە، تەنها تایبەتمەندی 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 ی مانادار
سادەترین پێکهاتەی HTML ی Gridzy ئەمەیە:
<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 دەبێت. بۆ زانیاری زیاتر لەسەری، سەیری Captions & Skins بکە.
کەپشن و پێستەکان
ئەگەر دەتەوێت کەپشن بۆ گەلەرییەکەت زیاد بکەیت، پێویستە دەرکەوتنەکە پێناسە بکەیت. بۆیە هەندێک پێستی پێشوەختە دیاریکراو بەردەستە. هەر پێستێک پێکهاتووە لە فایلێکی CSS. پێویستە ئەم فایلە زیاد بکەیت جگە لە فایلە سەرەکییەکانی Gridzy (بەزۆری لە بەشی سەر):
<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، سەیری Semantic HTML بکە.
بۆ کەپشنەکە دەتوانیت هەر جۆرە تاگێک بەکاربهێنیت، تەنها دڵنیابە کە پۆلی gridzyCaption ی هەیە. توخمە img پێویستی بە پۆلی gridzyImage هەیە.
نموونەی سەرەوە پێستت نیشان دەدات gridzySkinClassic . بۆ بەکارهێنانی یەکێکی جیاواز تەنها ناوی پێستەکە بگۆڕە بە یەکێک لەمانەی:
پێستەکانی لەگەڵدایە
| پۆلە بەردەستەکان | |
|---|---|
| gridzySkinBlank خاڵی دەستپێکی باشە بۆ دروستکردنی پێستێکی تایبەت بەخۆت پێشبینی ڕاستەوخۆ | gridzySkinBlank |
| gridzySkinClassic پێشبینی ڕاستەوخۆ | gridzySkinClassic(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
| gridzySkinFullOverlay پێشبینی ڕاستەوخۆ | gridzySkinFullOverlay(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
| gridzySkinLift پێشبینی ڕاستەوخۆ | gridzySkinLift(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
| gridzySkinMagnifier کارایی زوومکردن لەگەڵیدا نییە پێشبینی ڕاستەوخۆ | gridzySkinMagnifier(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
هەموو ئەو سکینانەی سەرەوە تەنها پێویستیان بە فایلێکی CSS هەیە، بەڵام سکینی زیادە هەیە کە پێویستیان بە فایلێکی جاڤاسکڕێپتیش هەیە:
<link rel="stylesheet" href="gridzy/skins/gridzySkinBlur/style.min.css" />
<script src="gridzy/skins/gridzySkinBlur/script.min.js"></script>| پۆلە بەردەستەکان | |
|---|---|
| gridzySkinBlur لە IE کار ناکات پێشبینی ڕاستەوخۆ | gridzySkinBlur(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
| gridzySkinCard پێشبینی ڕاستەوخۆ | gridzySkinCard(لە وەشانی ٢.٦.٠ەوە بەکارنەهاتووە) |
بژاردەی پێست
لە وەشانی ٢.٦.٠ەوە هەڵبژاردن هەیە بۆ ڕێکخستنی پێستە ناوەکییەکان. بەپێی پێستی تایبەت دەتوانیت ڕەنگی پاشبنەما و ڕەنگی دەق و سێبەری دەق دابنێیت. تەنها پێویستە تایبەتمەندییە تایبەتەکانی 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 ئەم پۆلە بە شێوەیەکی ئۆتۆماتیکی بۆ هەموو منداڵە ڕاستەوخۆکانی توخمە سەرەکییەکەی دەفرەکە دادەنێت. کەواتە، دەتوانیت ئەم پۆلە بەکاربهێنیت بۆ ستایلکردنی شتەکانی گەلەریەکەت.
عەقڵ شتە گرنگەکان
- ناوەڕۆکی بابەتەکە دەبێت بە تەواوی وەڵامدەرەوە بێت. لەبەرچاو بگرە کە قەبارەی توخمەکە بە دڵنیاییەوە دەگۆڕێت. لەبری بەهاکانی پێکسڵ بەهاکانی لەسەدا بەکاربهێنە. وە سەیری هەڵبژاردەی نەخشەی Gridzy بکە
autoFontSize, کە قەبارەی فۆنتەکە دەبەستێتەوە بە قەبارەی سندوقی بابەتە. - هەر بابەتێک دەبێت ڕێژەی ڕووبەری باش دیاریکراوی هەبێت. ڕێژەی ڕووبەری بابەتەکە هەرگیز ناگۆڕێت و پێویستە بۆ حیسابکردنی تۆڕەکە. کەواتە ئەگەر شتێک بە شێوەیەکی ئۆتۆماتیکی ڕێژەی ڕووبەری باش پێناسەکراوی نەبێت، پێشوەختە بە دەست پێناسەی بکە (بۆ نموونە لە ڕێگەی css).
لە هەندێک حاڵەتدا، ڕەنگە ئاسانتر بێت بۆ ستایلکردنی ناوەڕۆکی بابەتەکان پێش ئەوەی Gridzy دەستپێکردن بکات. تەنها پۆلی gridzy یان پەڕگەی جاڤاسکڕێپتی Gridzy بە شێوەیەکی کاتی لاببە بۆ ئەمە.
ئەوە تەواو! ئەوە تەنها شتێکە کە پێویستە بۆ دروستکردنی پێستی زۆر تایبەت بە خۆت. زۆربەی پێستە پێشوەختە دیاریکراوەکان زیاتر لەم بەکارناهێنن.
بەڵام دەکرێت زیاتریش هەبێت ئەگەر حەزت لێیە ...
پێستی پێشکەوتوو
Gridzy زیاتر پۆلەکانی CSS بەکاردەهێنێت نەک تەنها gridzyItem . زۆربەیان بە شێوەیەکی ئۆتۆماتیکی ڕێکدەخرێن و دەتوانیت بۆ ستایلکردنیش بەکاریان بهێنیت.
پۆلەکانی کۆنتێنەری سەرەکی
| ناوی پۆل | وەسف |
|---|---|
gridzyبۆ ڕێکخستنی بە دەستی | 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 ی سەرەکی Gridzy پێناسە کراون.
بەم پۆلانەی CSS کە لە سەرەوە باسمان کرد دەتوانیت ستایل بۆ نیشاندەری پرۆسێس و ئەنیمەیشنەکانی خۆت بکەیت. بوێری ئەوە بکە سەیری پەڕگەی سەرەکی CSS ی Gridzy بکە، بۆ ئەوەی تێبگەیت کە دەبێت چی جێبەجێ بکەیت. ترس نییە، هەموو شتێک لەوێدا بە باشی بەڵگەی لەسەرە.
باشترکردنی بارکردن
ئەگەر زۆر وێنە بەکاربهێنیت، دەتوانێت بیرۆکەیەکی باش بێت کە یارمەتی گریدزی بدەیت کە خێراتر تۆڕەکە دروست بکات.
ڕێگری لە بازدان وێنەکان
Gridzy بە تەواوی پێویستی بە ڕێژەی ڕووبەری هەموو وێنەکان هەیە بۆ حیسابی تۆڕەکە. ئەم ڕاستیانە لە ئەنجامدا توخمەکان باز دەدەن ئەگەر هەندێک وێنە ئامادە بن و هەندێکی تر ئامادە نەبن. تا وێنە زیاتر بێت، ئەم کاریگەرییە زیاتر بێزارکەر دەبێت.
بۆ ڕێگریکردن لەم هەڵسوکەوتە، تەنها تایبەتمەندیەکانی width و height بۆ هەموو توخمەکانی img دابنێ. گرنگە بەها دروستەکان بۆ هەر وێنەیەکی تاکەکەسی دابنرێت، ئەگەرنا وێنەکان دەشێوێن. بەها دروستەکان بریتین لە پانایی و بەرزی ئەسڵی وێنەی تایبەت بە خۆیان:
<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>دواتر Gridzy دەتوانێت دەستبەجێ تۆڕەکە حیساب بکات بەبێ ئەوەی پێویست بکات قەبارەی ڕاستەقینەی وێنەکان بزانێت.
تەمبەڵی بارکردن
بۆ بارکردنی تەنها ئەو وێنانەی کە لە دیمەنی بینراودان، تەنها ئەم هەنگاوانە پەیڕەو بکە:
- تایبەتمەندیەکانی
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>دوای ئەم هەنگاوانە وێنەکان هەر کە نزیک یان لە ناو ڤیوپۆرتەکەدا بوون باردەکرێن.
نیشاندەری پرۆسێس
نیشاندەری پرۆسێس ئەو ئایکۆنە بچووکە ئەنیمەیشنە کە لە کاتی بارکردنی وێنەکەدا دەردەکەوێت. ئەگەر captions & skins بەکاربهێنیت، نیشاندەری پرۆسەکە بە شێوەیەکی ئۆتۆماتیکی پیشان دەدرێت. ئەگەرنا پێویستت بە هەندێک ڕێکخستنە:
- هەر توخمێکی
imgبخەرە ناو توخمێکیdiv
(یان بۆ هەر توخمێکی تر – بۆ زانیاری زیاتر سەیری HTMLی مانادار بکە) - پۆلی
gridzyImageزیاد بکە بۆ هەر توخمێکیimg
<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>دوای ئەوە پێویستە نیشاندەری پرۆسەکە ببینیت ئەگەر وێنەکان کاتیان پێچوو بۆ بارکردن.
فلتەرەکان
فلتەرەکان لە Gridzy زۆر سادەن بەڵام بەهێزن. گرنگ نییە چ جۆرە فلتەرێکت پێویستە، زۆر ئەگەری ئەوە هەیە کە دەتوانرێت بەدیبهێنرێت. تەنها پێویستت بە ئەوەیە، کەمێک 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 ی ئاسایی Gridzy هەیە و ناوی پۆلەکان بۆ هەموو بابەتەکانی گەلەری دابنێین بۆ ئەوەی بتوانین دوای ئەوە فلتەریان بکەین
<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>وەک دەبینیت ئێمە هەڵبژێرەری CSS بۆ هەڵبژاردەی filterControls بەکاردەهێنین. کۆنتێنەری div کە تایبەتمەندی id هەیە تەنها خزمەت بە هەڵبژاردنی دوگمەکان دەکات لە ڕێگەی ئەو هەڵبژێرەری CSS ەوە.
ئەوە تەواو!
ئەگەر چارەسەری جاڤاسکڕێپتت پێ باشترە، سەیری API بکە.
API
هەرچەندە Gridzy API ی تایبەتی خۆی هەیە، بەڵام زۆربەی شتەکان دەتوانرێت بەبێ ئەو ئەنجام بدرێت، تەنها بە دەستکاریکردنی DOM. گریدزی سەرنجی دەدات و تۆڕەکە ڕێکدەخات. بەڵام APIیەکی زۆر بەهێزیش هەیە ...
دەستکاریکردنی DOM
بۆ هەموو دەستکارییەکانی مۆدێلی ئۆبجێکتی بەڵگەنامە (DOM) سەرەتا پێویستمان بە توخمە کۆنتێنەرەکە دەبێت:
// get the container element
var gridzyElement = document.querySelector('.gridzy');زیادکردنی وێنە
گرنگە توخمە منداڵە نوێیەکە بە تەواوی دروست بکەیت و پڕی بکەیتەوە پێش ئەوەی زیاد بکەیت بۆ توخمە دەفرەکە. ئەگەرنا 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 بدۆزیتەوە. هەروەها پێشەکییەک بۆ 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
});فلتەر بەکاربهێنە
جێبەجێکردنی فلتەر تەنها ڕێکخستنی 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'
});زیادکردنی ئەرکەکانی Callback
لە وەشانی ٢.٤.٠ەوە بەکارنەهاتووە
لەبری ئەوە ڕووداوە مۆدێرن و نەرمترەکان بەکاربهێنە. بۆ زانیاری زیاتر سەیری بەشی داهاتوو بکە.
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.
}
});ڕووداوەکان بەکاربهێنە
لە وەشانی ٢.٤.٠ەوە
دەتوانیت ڕووداوەکانی Gridzy بە تەواوی وەک ڕووداوە ئاساییەکانی جاڤاسکڕێپت بەکاربهێنیت:
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.
});هەندێک ڕووداو لەسەر توخمە کۆنتێنەرەکەی Gridzy و ڕووداوەکانی تر لەسەر توخمە تاکەکەسییەکانی بابەتی ناو توخمە کۆنتێنەرەکە تەقە دەکرێن.
ئەو ڕووداوانەی کە لەسەر توخمە کۆنتێنەرەکەی گریدزی تەقە دەکرێن:
event.target توخمە کۆنتێنەرەکەی Gridzy دابین دەکات.
event.detail.instance نموونەی Gridzy دابین دەکات.
ئەو ڕووداوانەی کە لەسەر توخمەکانی بابەتی تەقە دەکرێن:
event.target توخمە بابەتی تایبەت بە خۆی دابین دەکات.
event.detail.instance نموونەی Gridzy دابین دەکات.
API – جیهانی
هەندێک فەنکشن هەن کە سەربەخۆن لە نموونەکانی Gridzy. بۆیە پێویست ناکات پێشتر نموونەیەک بەدەست بهێنین.
هەڵبژاردەی پێشوەختە بەدەست بهێنە
// 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');هەڵبژاردەکانی پێشوەختە دابنێ
ئەمە هەڵبژاردەکانی هەموو نموونەکانی Gridzy کە پێشتر سەرەتایی کراون دانانێت، بەڵکو بنەما بۆ نموونە نوێیەکان پێناسە دەکات. بەڵام ئەگەر بژاردەیەکی نموونەیەکی هەبوو لە ڕێگەی بەهای 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();