Sourceدابەزینەکان
گۆڕینی سەرپۆشی ناوەڕۆک بۆ پیشاندانی لیستەکانی بەستەرەکان و زۆر شتی تر بە پێوەکراوەکەی Bootstrap.
تێڕوانینێکی گشتی
دابەزینەکان دەتوانرێت بگۆڕدرێن، سەرپۆشی ناوەڕۆکن بۆ پیشاندانی لیستەکانی بەستەرەکان و زۆر شتی تر. ئەوان بە پێوەکراوەکەی جاڤاسکڕێپتی Bootstrap کە لەگەڵیدا هاتووە کارلێککارانە دەکرێن. ئەوان بە کلیککردن دەگۆڕدرێن نەک بە هۆڤەرکردن؛ ئەمە بڕیارێکی دیزاینی بە مەبەستە .
درۆپداونەکان لەسەر کتێبخانەی لایەنی سێیەم دروستکراون، Popper.js , کە شوێنی داینامیکی و دیاریکردنی دەرچەی بینین دابین دەکات. دڵنیابە پێش جاڤاسکڕێپتی Bootstrap popper.min.js دابنێ یان bootstrap.bundle.min.js
/ بەکاربهێنە bootstrap.bundle.js
کە Popper.js لەخۆدەگرێت. Popper.js بەکارناهێنرێت بۆ جێگیرکردنی دابەزینەکان لە navbars هەرچەندە وەک جێگیرکردنی داینامیکی پێویست نییە.
ئەگەر جاڤاسکڕێپتەکەمان لە سەرچاوەوە دروست دەکەیت، پێویستی بەutil.js
.
دەستڕاگەیشتن
ستانداردی WAI ARIArole="menu"
ویجتێکی ڕاستەقینە پێناسە دەکات ، بەڵام ئەمە تایبەتە بە مینیوەکانی هاوشێوەی بەرنامە کە کردارەکان یان ئەرکەکان دەستپێدەکات. مینیوەکانی ARIA تەنها دەتوانن بابەتی مینیو، بابەتی مینیوی سندوقی هەڵبژاردن، بابەتی مینیوی دوگمەی ڕادیۆیی، گروپەکانی دوگمەی ڕادیۆیی و مینیوی لاوەکی لەخۆ بگرن.
لە بەرامبەردا، درۆپداونەکانی بووتستراپ بە شێوەیەک داڕێژراون کە گشتی بن و بۆ چەندین بارودۆخ و پێکهاتەی مارکاپ بەکاربهێنرێن. بۆ نموونە دەتوانرێت درۆپداونەکان دروست بکرێت کە زانیارییەکانی ناوەوە و کۆنترۆڵی فۆڕمی زیادە لەخۆ بگرن، وەک بواری گەڕان یان فۆڕمی چوونەژوورەوە. هەر لەبەر ئەم هۆکارە، Bootstrap چاوەڕوانی هیچ کام لە تایبەتمەندییە role
و aria-
پێویستەکان بۆ مینیوەکانی ARIA ڕاستەقینە ناکات (نە بە شێوەیەکی ئۆتۆماتیکی زیاد دەکات). نووسەران دەبێت خۆیان ئەم سیفەتە تایبەتترانە لەخۆ بگرن.
بەڵام Bootstrap پشتگیرییەکی ناوەکی بۆ زۆربەی کارلێکەکانی مینیوی کیبۆرد ستاندارد زیاد دەکات، وەک توانای جووڵەکردن بەناو تاکە .dropdown-item
توخمەکاندا بە بەکارهێنانی کلیلەکانی ئاماژەدەر و داخستنی مینیوەکە بە ESCکلیلەکە.
نموونە
گۆڕینی دابەزینەکە (دوگمە یان بەستەرەکەت) و مینیوی دابەزینەکە لەناو .dropdown
, یان توخمێکی تر کە ڕایدەگەیەنێت، بپێچە position: relative;
. دەتوانرێت دابەزاندنەکان لە <a>
یان <button>
توخمەکانەوە دەستپێبکرێت بۆ ئەوەی باشتر لەگەڵ پێداویستییە ئەگەرییەکانتدا بگونجێت.
هەر تاکە گۆرانییەک .btn
دەتوانرێت بکرێتە وەرچەرخانێکی دابەزین بە هەندێک گۆڕانکاری مارکاپ. <button>
لێرەدا چۆن دەتوانیت بە هەریەکێک لە توخمەکان بیانخەیتە کار :
وە لەگەڵ <a>
توخمەکان:
باشترین بەش ئەوەیە کە دەتوانیت ئەمە بکەیت بە هەر جۆرێکی دوگمە، هەروەها:
بە هەمان شێوە، درووستکردنی دوگمەی دابەشکراو دروست بکە بە هەمان نیشانە وەک دابەزینی تاکە دوگمە، بەڵام لەگەڵ زیادکردنی .dropdown-toggle-split
بۆ دوورییەکی دروست لە دەوری کارێتی دابەزین.
ئێمە ئەم پۆلە زیادەیە بەکاردەهێنین بۆ کەمکردنەوەی ئاسۆیی padding
لە هەردوو لای کارێتەکە بە ڕێژەی 25% و لابردنی margin-left
کە زیادکراوە بۆ دابەزینی دوگمەی ئاسایی. ئەو گۆڕانکارییە زیادانە کارێتەکە لە ناوەندی دوگمەی دابەشکردنەکەدا دەهێڵنەوە و ناوچەیەکی لێدان بە قەبارەیەکی گونجاوتر لە تەنیشت دوگمەی سەرەکیدا دابین دەکەن.
قەبارەدانان
دوگمەکانی دابەزین لەگەڵ دوگمەکانی هەموو قەبارەکان کاردەکەن، لەوانەش دوگمەکانی پێشوەختە و دابەشکراو.
ئاراستەکان
درۆپ ئاپ
مینیوەکانی سەرەوەی توخمەکان بە زیادکردنی .dropup
بۆ توخمە باوکەکە دەستپێبکە.
درۆپڕایت
مینیوەکانی دابەزین لە لای ڕاستی توخمەکان بە زیادکردن .dropright
بۆ توخمە باوکەکە دەستپێبکە.
درۆپلێفت
مینیوەکانی دابەزین لە لای چەپی توخمەکان بە زیادکردن .dropleft
بۆ توخمە باوکەکە دەستپێبکە.
لە ڕووی مێژووییەوە ناوەڕۆکی مینیوی دابەزین دەبوو بەستەر بن، بەڵام چیتر ئەوە لە v4دا نییە. ئێستا دەتوانیت بە ئیختیاری <button>
توخمەکان لە درۆپداونەکانتدا بەکاربهێنیت لەبری تەنها <a>
s.
هەروەها دەتوانیت بە .dropdown-item-text
. ئازادانە زیاتر ستایل بکە بە سوودمەندی CSS یان دەقی تایبەتمەند.
چالاک
زیاد بکە .active
بۆ شتەکان لە درۆپ داونەکەدا بۆ ئەوەی وەک چالاک ستایلیان بکەیت .
کەم ئەندام
زیاد بکە .disabled
بۆ شتەکان لە درۆپ داونەکەدا بۆ ئەوەی وەک لەکارخراو ستایلیان بکەیت .
بە شێوازی پێشوەختە، مینیویەکی دابەزین بە شێوەیەکی ئۆتۆماتیکی لە سەرەوە و بە درێژایی لای چەپی دایک و باوکەکەی 100% دادەنرێت. زیادکردن .dropdown-menu-right
بۆ a .dropdown-menu
بۆ ڕاست ڕێکخستنی مینیوی دابەزین.
سەرەکان بەرز دەکەنەوە! درۆپداونەکان بەهۆی Popper.js ەوە جێگیر دەکرێن (جگە لەو کاتانەی کە لە ناو بارێکدا هەن).
ڕێکخستنی وەڵامدەرەوە
ئەگەر دەتەوێت ڕێکخستنی وەڵامدەرەوە بەکاربهێنیت، شوێنی داینامیکی لەکاربخە بە زیادکردنی data-display="static"
تایبەتمەندییەکە و پۆلەکانی گۆڕانی وەڵامدەرەوە بەکاربهێنە.
بۆ ڕێکخستنی مینیوی دابەزینەکە بە ڕاست.dropdown-menu{-sm|-md|-lg|-xl}-right
لەگەڵ خاڵی شکاندنی پێدراو یان گەورەتر، زیاد بکە .
بۆ ڕێکخستنی مینیوی چەپ.dropdown-menu-right
لەگەڵ خاڵی شکاندنی پێدراو یان گەورەتر، زیاد بکە و .dropdown-menu{-sm|-md|-lg|-xl}-left
.
تێبینی بکە کە پێویست ناکات data-display="static"
تایبەتمەندییەک زیاد بکەیت بۆ دوگمەکانی دابەزین لە navbars، بەو پێیەی Popper.js لە navbars بەکارناهێنرێت.
سەردێڕێک زیاد بکە بۆ ناونانی بەشەکانی کردارەکان لە هەر مینیویەکی دابەزین.
دابەشکەرەکان
گروپەکانی بابەتە پەیوەندیدارەکانی مینیو بە دابەشکەرێک جیا بکەرەوە.
دەق
هەر دەقێکی فۆڕمی ئازاد لەناو مینیویەکی دابەزین لەگەڵ دەق دابنێ و سوودمەندییەکانی دووری بەکاربهێنە . تێبینی بکە کە بە ئەگەرێکی زۆرەوە پێویستت بە شێوازی قەبارەدانانی زیادە دەبێت بۆ سنووردارکردنی پانایی مینیوەکە.
فۆڕمێک لەناو مینیویەکی دابەزین دابنێ، یان بیکە بە مینیوی دابەزین، و سوودمەندییەکانی پەراوێز یان پادکردن بەکاربهێنە بۆ ئەوەی ئەو شوێنە نەرێنییەی پێ بدەیت کە پێویستتە.
هەڵبژاردەکانی دابەزین
data-offset
یان بەکاربهێنە data-reference
بۆ گۆڕینی شوێنی دابەزینەکە.
بەکارهێنان
لە ڕێگەی تایبەتمەندییەکانی داتا یان جاڤاسکڕێپتەوە، پێوەکراوەکە ناوەڕۆکی شاراوە (مینیوەکانی دابەزین) دەگۆڕێت بە گۆڕینی .show
پۆلەکە لەسەر بابەتی لیستی باوک. تایبەتمەندییەکە data-toggle="dropdown"
پشتی پێدەبەسترێت بۆ داخستنی مینیوەکانی دابەزین لە ئاستی بەرنامەیەکدا، بۆیە بیرۆکەیەکی باشە هەمیشە بەکاری بهێنیت.
لەسەر ئامێرە چالاککراوەکانی دەست لێدان، کردنەوەی دابەزینێک مامەڵەکاری بەتاڵ ( $.noop
) زیاد دەکات mouseover
بۆ منداڵە دەستبەجێیەکانی <body>
توخمەکە. ئەم هاکە ناشرینە پێویستە بۆ کارکردن لە دەوری quirk لە iOS' event delegation , کە ئەگەرنا ڕێگری دەکات لە لێدانێک لە هەر شوێنێک لە دەرەوەی دابەزینەکە لە دەستپێکردنی کۆدەکە کە دابەزینەکە دادەخات. کاتێک کە درۆپداونەکە دادەخرێت، ئەم mouseover
مامەڵەکارە بەتاڵانەی زیادە لا دەبرێن.
لە ڕێگەی تایبەتمەندییەکانی داتا
زیادکردن data-toggle="dropdown"
بۆ بەستەرێک یان دوگمەیەک بۆ گۆڕینی دابەزینێک.
لە ڕێگەی جاڤاسکڕێپتەوە
لە ڕێگەی جاڤاسکڕێپتەوە پەیوەندی بە درۆپداونەکانەوە بکە:
data-toggle="dropdown"
هێشتا پێویستە
بەبێ گوێدانە ئەوەی کە ئایا لە ڕێگەی جاڤاسکڕێپتەوە بانگی دابەزینەکەت دەکەیت یان لەبری ئەوە data-api بەکاردەهێنیت، data-toggle="dropdown"
هەمیشە پێویستە لەسەر توخمە دەستپێکەری دابەزینەکە ئامادە بیت.
بژاردەکان
دەتوانرێت هەڵبژاردنەکان لە ڕێگەی تایبەتمەندییەکانی داتا یان جاڤاسکڕێپتەوە تێپەڕێنرێت. بۆ تایبەتمەندیەکانی داتا، ناوی هەڵبژاردنەکە زیاد بکە بۆ data-
, وەک لە data-offset=""
.
ناو |
جۆر |
بنەڕەتی |
وەسف |
ئۆفسێت |
ژمارە | ڕستە | کردار |
0. 0 |
ئۆفسێتی دابەزینەکە بە بەراورد بە ئامانجەکەی. کاتێک فەنکشنێک بەکاردەهێنرێت بۆ دیاریکردنی ئۆفسێتەکە، بە ئۆبجێکتیک کە داتاکانی ئۆفسێتەکەی تێدایە وەک یەکەم ئارگومێنتەکەی بانگ دەکرێت. فەنکشنەکە دەبێت ئۆبجێکتیک بگەڕێنێتەوە کە هەمان پێکهاتەی هەبێت. گرێی DOM ی توخمە دەستپێکەر وەک ئارگومێنتی دووەم دەگوازرێتەوە. بۆ زانیاری زیاتر سەردانی دۆکیومێنتەکانی ئۆفسێتی Popper.js بکە . |
وەرگەڕاندن |
boolean |
ڕاست |
ڕێگە بدە Dropdown بگۆڕێت لە ئەگەری سەریەککەوتن لەسەر توخمە ئاماژەکە. بۆ زانیاری زیاتر سەردانی Flip docs ی Popper.js بکە . |
سنوور |
ڕستە | پێکهاتە |
'scrollParent' |
سنووری سنووردارکردنی ڕژانی مینیوی دابەزین. بەهاکانی 'viewport' , 'window' , 'scrollParent' , یان ئاماژەیەکی HTMLElement قبوڵ دەکات (تەنها جاڤاسکڕێپت). بۆ زانیاری زیاتر سەردانی دۆکیومێنتەکانی preventOverflow ی Popper.js بکە . |
سەرچاوە |
ڕستە | پێکهاتە |
'تۆگڵ' |
توخمە ئاماژەییەکەی مینیوی دابەزین. بەهاکانی 'toggle' , 'parent' , یان ئاماژەیەکی HTMLElement قبوڵ دەکات. بۆ زانیاری زیاتر سەردانی referenceObject docs ی Popper.js بکە . |
پیشاندان |
ڕستە |
'داینامیک' |
بە شێوەیەكی بنەڕەتی، ئێمە Popper.js بەکاردەهێنین بۆ جێگیرکردنی داینامیکی. ئەمە لەکاربخە بە static . |
popperConfig |
پووچ | شت |
هیچ |
بۆ گۆڕینی ڕێکخستنی پێشوەختەی Popper.js ی Bootstrap، سەیری ڕێکخستنی Popper.js بکە |
تێبینی کاتێک boundary
لەسەر هەر بەهایەک دانراوە جگە لە 'scrollParent'
, ستایلەکە position: static
بۆ .dropdown
کۆنتێنەرەکە جێبەجێ دەکرێت.
شێوازەکان
ڕێگا |
وەسف |
$().dropdown('toggle') |
مینیوی دابەزینی ناوبارێکی دیاریکراو یان گەشتێکی تابکراو دەگۆڕێت. |
$().dropdown('show') |
مینیوی دابەزینی ناوبارێکی دیاریکراو یان گەشتێکی تابکراو پیشان دەدات. |
$().dropdown('hide') |
مینیوی دابەزینی ناوبارێکی دیاریکراو یان گەشتێکی تابکراو دەشارێتەوە. |
$().dropdown('update') |
شوێنی دابەزینی توخمێک نوێ دەکاتەوە. |
$().dropdown('dispose') |
درۆپداونی توخمێک لەناو دەبات. |
ڕووداوەکان
هەموو ڕووداوەکانی دابەزین لە .dropdown-menu
توخمە باوکەکەی 's تەقە دەکرێن و relatedTarget
تایبەتمەندییەکیان هەیە، کە بەهاکەی توخمە ئەنکرەکەی دەگۆڕێت. hide.bs.dropdown
و hidden.bs.dropdown
ڕووداوەکان clickEvent
تایبەتمەندییەکیان هەیە (تەنها کاتێک جۆری ڕووداوی ڕەسەن click
) کە Event Object بۆ ڕووداوی کلیک لەخۆدەگرێت.
پێشهات |
وەسف |
show.bs.dropdown |
ئەم ڕووداوە دەستبەجێ ئاگر دەبێتەوە کاتێک شێوازی show instance بانگ دەکرێت. |
shown.bs.dropdown |
ئەم ڕووداوە کاتێک ئاگر دەکرێتەوە کە دابەزینەکە بۆ بەکارهێنەر دیار بێت (چاوەڕێی گواستنەوەکانی CSS دەکات، بۆ تەواوبوون). |
hide.bs.dropdown |
ئەم ڕووداوە دەستبەجێ ئاگر دەکرێتەوە کاتێک شێوازی hide instance بانگ کراوە. |
hidden.bs.dropdown |
ئەم ڕووداوە کاتێک تەقە دەکرێت کە دابەزینەکە تەواو بوو لە شاردنەوە لە بەکارهێنەر (چاوەڕوانی گواستنەوەکانی CSS دەکات، بۆ تەواوبوون). |