Sourceဆွဲချမှုများ
Bootstrap dropdown plugin ဖြင့် လင့်ခ်များစာရင်းများနှင့် အခြားအရာများကိုပြသရန်အတွက် ဆက်စပ်သောထပ်ဆင့်မှုများကို အဖွင့်အပိတ်လုပ်ပါ။
လင့်ခ်များစာရင်းများနှင့် အခြားအရာများကိုပြသရန်အတွက် ဆက်စပ်အလွှာများ နှင့် အခြားအရာများကို ပြောင်းလဲနိုင်သည်။ ၎င်းတို့သည် ပါဝင်သော Bootstrap dropdown JavaScript plugin ဖြင့် အပြန်အလှန်တုံ့ပြန်မှုများ ပြုလုပ်ထားသည်။ ပျံဝဲခြင်းမဟုတ်ဘဲ ကလစ်ဖြင့် ခလုတ်နှိပ်ခြင်း၊ ဒါက ရည်ရွယ်ချက်ရှိရှိ ဒီဇိုင်းဆုံးဖြတ်ချက်တစ်ခုပါ။
ရွေ့လျားနေရာချထားခြင်းနှင့် မြင်ကွင်းပို့သိရှိနိုင်မှုကို ပံ့ပိုးပေးသည့် ပြင်ပအဖွဲ့အစည်း စာကြည့်တိုက်၊ Popper.js တွင် လွှတ်ချပေးမှုများကို တည်ဆောက်ထားသည်။ Bootstrap ၏ JavaScript မတိုင်မီ popper.min.js ပါ ၀င်ပါ သို့မဟုတ် Popper.js ပါရှိသော bootstrap.bundle.min.js
/ bootstrap.bundle.js
ကိုအသုံးပြုပါ။ Popper.js ကို navbars တွင် dropdowns နေရာချရန် အသုံးမပြုသော်လည်း dynamic positioning ကိုမလိုအပ်ပါ။
အကယ်၍ သင်သည် ကျွန်ုပ်တို့၏ JavaScript ကို အရင်းအမြစ်မှ တည်ဆောက်နေပါက၊ ၎င်းသည် လိုအပ်ပါသည်util.js
။
WAI ARIA စံနှုန်းသည် တကယ့်ဝစ်ဂျက်တစ်ခုကို သတ်မှတ် role="menu"
ပေးသည် ၊ သို့သော် ၎င်းသည် လုပ်ဆောင်ချက်များ သို့မဟုတ် လုပ်ဆောင်ချက်များကို အစပျိုးပေးသည့် အပလီကေးရှင်းကဲ့သို့သော မီနူးများအတွက် သီးသန့်ဖြစ်သည်။ ARIA မီနူးများတွင် မီနူးအရာများ၊ အမှတ်ခြစ်ထားသော မီနူးအရာများ၊ ရေဒီယိုခလုတ်မီနူးအရာများ၊ ရေဒီယိုခလုတ်အုပ်စုများနှင့် မီနူးခွဲများသာ ပါဝင်နိုင်သည်။
တစ်ဖက်တွင်မူ Bootstrap ၏ dropdowns များသည် ယေဘူယျဖြစ်ပြီး အခြေအနေအမျိုးမျိုးနှင့် markup တည်ဆောက်ပုံများတွင် အသုံးပြုနိုင်စေရန် ဒီဇိုင်းထုတ်ထားသည်။ ဥပမာအားဖြင့်၊ ရှာဖွေမှုအကွက်များ သို့မဟုတ် လော့ဂ်အင်ဖောင်များကဲ့သို့သော ထပ်လောင်းထည့်သွင်းမှုများနှင့် ဖောင်ထိန်းချုပ်မှုများပါရှိသော dropdowns များကို ဖန်တီးနိုင်သည်။ ဤအကြောင်းကြောင့်၊ Bootstrap သည် စစ်မှန်သော ARIA မီနူး များအတွက် လိုအပ်သော အရည်အချင်းများ role
နှင့် မည်သည်ကိုမျှ (အလိုအလျောက်ထည့်မည်မဟုတ်) မျှော်လင့်မထားပေ ။ စာရေးဆရာများသည် ဤပိုမိုတိကျသော အရည်အချင်းများကို ကိုယ်တိုင်ထည့်သွင်းရပါမည်။aria-
.dropdown-item
သို့သော်၊ Bootstrap သည် cursor ခလုတ်များကို အသုံးပြု၍ ခလုတ်များကို အသုံးပြု၍ အစိတ်အပိုင်းတစ်ခုချင်းစီကို ရွေ့လျားနိုင်ပြီး မီနူးကို သော့ဖြင့်ပိတ် နိုင်မှုကဲ့သို့သော စံကီးဘုတ်မီနူး အပြန်အလှန်တုံ့ပြန်မှုအများစုအတွက် built-in ပံ့ပိုးပေးပါသည် ESC။
dropdown ၏ toggle (သင့်ခလုတ် သို့မဟုတ် လင့်ခ်) နှင့် dropdown menu အတွင်း .dropdown
သို့မဟုတ် ကြေငြာသော အခြားအရာတစ်ခုကို ခြုံ position: relative;
ပါ။ <a>
သင်၏ ဖြစ်နိုင်ချေ ရှိသော <button>
လိုအပ်ချက်များနှင့် ပိုမိုကိုက်ညီစေရန် အစိတ်အပိုင်းများ မှ ဆွဲချမှုများကို အစပျိုးနိုင်သည် ။
မည်သည့်တစ်ခုတည်းကိုမဆို .btn
markup အပြောင်းအလဲများဖြင့် dropdown toggle အဖြစ်ပြောင်းနိုင်သည်။ <button>
ဤသည်မှာ ၎င်းတို့အား အစိတ်အပိုင်းနှစ်ခု လုံးဖြင့် အလုပ်လုပ်ရန် သင်ထားနိုင်ပုံဖြစ်သည် -
နှင့် <a>
ဒြပ်စင်များနှင့်အတူ:
အကောင်းဆုံးသော အစိတ်အပိုင်းမှာ မည်သည့် ခလုတ်မျိုးကွဲနှင့်မဆို ပြုလုပ်နိုင်သည်-
အလားတူပင်၊ ခလုတ်တစ်ချက်မှ လျှော့စျေးများကဲ့သို့ အမှတ်အသားပြုထားသည့် ခွဲခြမ်းခလုတ်များကို ဖန်တီးပါ၊ သို့သော် .dropdown-toggle-split
dropdown caret တစ်ဝိုက်တွင် သင့်လျော်သောအကွာအဝေးအတွက် ပေါင်းထည့်ခြင်းဖြင့်။
padding
ကတ်၏တစ်ဖက်တစ်ချက်ရှိ အလျားလိုက်ကို 25% လျှော့ချရန်နှင့် margin-left
ပုံမှန်ခလုတ် dropdowns အတွက် ထည့်သွင်းထားသည့် အရာများကို ဖယ်ရှားရန် ဤအပိုအတန်းအစားကို ကျွန်ုပ်တို့အသုံးပြုပါသည်။ အဆိုပါ အပိုပြောင်းလဲမှုများသည် ကတ်ကိုခွဲခလုတ်တွင် ဗဟိုပြုထားကာ ပင်မခလုတ်ဘေးရှိ ပိုမိုသင့်လျော်သော အရွယ်အစားထိမှန်ဧရိယာကို ပေးဆောင်သည်။
ခလုတ် dropdowns များသည် ပုံသေနှင့် ခွဲထားသော dropdown ခလုတ်များအပါအဝင် အရွယ်အစားအားလုံး၏ ခလုတ်များနှင့် အလုပ်လုပ်ပါသည်။
.dropup
ပင်မဒြပ်စင်သို့ ပေါင်းထည့်ခြင်းဖြင့် ဒြပ်စင်များအထက်ရှိ dropdown menus များကို အစပျိုးပါ ။
.dropright
ပင်မဒြပ်စင်သို့ ထည့်ခြင်းဖြင့် ဒြပ်စင်များ၏ညာဘက်ရှိ dropdown menus များကို အစပျိုးပါ ။
.dropleft
ပင်မဒြပ်စင်သို့ ပေါင်းထည့်ခြင်းဖြင့် ဒြပ်စင်များ၏ဘယ်ဘက်ရှိ dropdown menus များကို အစပျိုးပါ ။
သမိုင်းတွင် dropdown menu ပါဝင်သည့်အကြောင်းအရာများ သည် လင့်ခ်များဖြစ်ရမည်၊ သို့သော် ၎င်းသည် v4 တွင်မဟုတ်တော့ပါ။ ယခု သင်သည် s <button>
အစား သင်၏ dropdowns တွင် အစိတ်အပိုင်းများကို ရွေးချယ်နိုင်ပါပြီ ။<a>
အပြန်အလှန်အကျိုးသက်ရောက်မှုမရှိသော dropdown items များကိုလည်း ဖန်တီးနိုင်သည် .dropdown-item-text
။ စိတ်ကြိုက် CSS သို့မဟုတ် စာသား utilities များဖြင့် ထပ်မံစတိုင်လ်ကျရန် လွပ်လပ်စွာခံစားပါ။
၎င်းတို့ကို အသက်ဝင်သည့်ပုံစံအဖြစ် ပုံစံသတ်မှတ်ရန်.active
dropdown ရှိ အရာများ ထဲသို့ ထည့်ပါ ။
၎င်းတို့ကို disabled အဖြစ် ပုံစံသတ်မှတ်ရန်.disabled
dropdown ရှိ အရာများ ထဲသို့ ထည့်ပါ ။
ပုံမှန်အားဖြင့်၊ dropdown menu ကို ထိပ်ပိုင်းနှင့် ၎င်း၏မိဘ၏ ဘယ်ဘက်ခြမ်းတွင် 100% အလိုအလျောက် နေရာချထားပါသည်။ dropdown menu ကို ညာဘက်သို့ ညှိရန် .dropdown-menu-right
a သို့ ထည့်ပါ ။.dropdown-menu
ကြိုတင်အသိပေးသည်! Dropdowns များကို Popper.js ဖြင့် နေရာချထားသည် (၎င်းတို့ကို navbar တစ်ခုတွင် ထည့်ထားသည့်အခါမှလွဲ၍)။
မည်သည့် dropdown menu တွင်မဆို လုပ်ဆောင်ချက်များ၏ အညွှန်းကဏ္ဍများသို့ ခေါင်းစီးတစ်ခုထည့်ပါ။
ပိုင်းခြားခြင်းဖြင့် သက်ဆိုင်ရာ မီနူးအရာများကို အုပ်စုများ ခွဲပါ။
စာသားပါသော dropdown menu တွင် မည်သည့် freeform စာသားကိုမဆို နေရာချပြီး space utilities ကိုသုံး ပါ။ မီနူးအကျယ်ကို ကန့်သတ်ရန် နောက်ထပ်အရွယ်အစားစတိုင်များ လိုအပ်နိုင်သည်ကို သတိပြုပါ။
dropdown menu အတွင်း ဖောင်တစ်ခုထည့်ပါ သို့မဟုတ် dropdown menu တွင် ပြုလုပ်ပါ၊ ၎င်းကို သင်လိုအပ်သော အနုတ်လက္ခဏာနေရာ ပေးရန် အတွက် အနားသတ် သို့မဟုတ် ပက်ဒ် utilities ကို အသုံးပြုပါ။
dropdown ၏တည်နေရာကိုပြောင်းလဲရန် data-offset
သို့မဟုတ် အသုံးပြု ပါ။data-reference
ဒေတာ attributes သို့မဟုတ် JavaScript မှတဆင့်၊ dropdown plugin သည် .show
ပင်မစာရင်းအကြောင်းအရာတွင် အတန်းကို ပြောင်းပစ်ခြင်းဖြင့် လျှို့ဝှက်အကြောင်းအရာ (dropdown menus) ကို ပြောင်းပေးသည်။ ရည်ညွှန်းချက်သည် အ data-toggle="dropdown"
ပလီကေးရှင်းအဆင့်ရှိ dropdown menus များကိုပိတ်ရန်အတွက် အားကိုးထားသောကြောင့် ၎င်းကို အမြဲသုံးရန် စိတ်ကူးကောင်းပါသည်။
ထိတွေ့အသုံးပြုနိုင်သော စက်များတွင်၊ ဒေါင်းလုပ်တစ်ခုဖွင့်ခြင်းသည် ဒြပ်စင် ၏ချက်ချင်းကလေးများထံသို့ ဗလာ( $.noop
) ကိုင်တွယ်သူများကို ပေါင်းထည့်သည်။ ဤရုပ်ဆိုးသော ဟက်ခ်သည် iOS ၏ အစီအစဉ်ကိုယ်စားလှယ်အဖွဲ့တွင် ဇာတ် ကွက်တစ်ခုလုပ်ဆောင်ရန် လိုအပ်သည် ၊ ၎င်းသည် dropdown ၏အပြင်ဘက်ရှိ မည်သည့်နေရာတွင်မဆို နှိပ်ခြင်းဖြင့် dropdown ကိုပိတ်သောကုဒ်ကိုစတင်ခြင်းမှတားဆီးနိုင်မည်ဖြစ်သည်။ dropdown ကိုပိတ်ပြီးသည်နှင့်၊ ဤအပိုအလွတ် ကိုင်တွယ်သူများကိုဖယ်ရှားသည်။mouseover
<body>
mouseover
data-toggle="dropdown"
dropdown တစ်ခုပြောင်းရန် လင့်ခ် သို့မဟုတ် ခလုတ်တစ်ခုသို့ ထည့်ပါ ။
JavaScript မှတဆင့် dropdown များကိုခေါ်ဆိုပါ-
data-toggle="dropdown"
လိုအပ်နေပါသေးတယ်။
သင့် dropdown ကို JavaScript မှတဆင့် ခေါ်သည်ဖြစ်စေ သို့မဟုတ် data-api ကိုသုံးသည်ဖြစ်စေ ၊ data-toggle="dropdown"
dropdown ၏ trigger element တွင် အမြဲရှိနေရန် လိုအပ်ပါသည်။
ရွေးချယ်စရာများကို data attributes သို့မဟုတ် JavaScript မှတဆင့်ဖြတ်သန်းနိုင်သည်။ data-
ဒေတာရည်ညွှန်းချက်များအတွက် ၊ တွင်ပါရှိသည့်အတိုင်း ရွေးချယ်စရာအမည်ကို ပေါင်းထည့် ပါ data-offset=""
။
နာမည် |
ရိုက်ပါ။ |
ပုံသေ |
ဖော်ပြချက် |
နှိမ်သည်။ |
နံပါတ် | string | လုပ်ဆောင်ချက် |
၀ယ်တယ်။ |
၎င်း၏ပစ်မှတ်နှင့် နှိုင်းယှဥ်သော dropdown ၏ offset နောက်ထပ်အချက်အလက်များအတွက် Popper.js ၏ offset docs ကို ကိုးကားပါ ။ |
လှန် |
ဘူလီယံ |
မှန်ပါတယ်။ |
ရည်ညွှန်းချက်ဒြပ်စင်ပေါ်တွင် ထပ်နေပါက Dropdown ကိုလှန်ခွင့်ပြုပါ။ နောက်ထပ်အချက်အလက်များအတွက် Popper.js ၏ flip docs ကို ကိုးကားပါ ။ |
နယ်နိမိတ် |
string | ဒြပ်စင် |
'scrollParent' |
dropdown menu ၏ ကန့်သတ်ကန့်သတ်ဘောင်။ 'viewport' , 'window' , 'scrollParent' , သို့မဟုတ် HTMLElement အကိုးအကား (JavaScript သာ) ၏ တန်ဖိုးများကို လက်ခံသည် ။ နောက်ထပ်အချက်အလက်များအတွက် Popper.js ၏ PreventOverflow docs ကို ကိုးကားပါ ။ |
အကိုးအကား |
string | ဒြပ်စင် |
'ပြောင်းရန်' |
dropdown menu ၏အကိုးအကားဒြပ်စင်။ 'toggle' , 'parent' , သို့မဟုတ် HTMLElement ရည်ညွှန်းချက် ၏ တန်ဖိုးများကို လက်ခံသည် ။ နောက်ထပ်အချက်အလက်များအတွက် Popper.js ၏ ရည်ညွှန်းObject docs ကို ကိုးကားပါ ။ |
ပြသခြင်း။ |
ကြိုးတစ်ချောင်း |
'သွက်လက်' |
ပုံမှန်အားဖြင့်၊ ကျွန်ုပ်တို့သည် ပြောင်းလဲနေသောနေရာချထားမှုအတွက် Popper.js ကိုအသုံးပြုသည်။ ၎င်းကို ပိတ်ပါ static ။ |
စတိုင် ကို ကွန်တိန်နာတွင် အသုံးပြုသည် boundary
မှလွဲ၍ အခြားတန်ဖိုးတစ်ခုခုသို့ သတ်မှတ် သည့်အခါ မှတ်သား ပါ။'scrollParent'
position: static
.dropdown
နည်းလမ်း |
ဖော်ပြချက် |
$().dropdown('toggle') |
ပေးထားသော navbar သို့မဟုတ် တက်ဘ်လုပ်ထားသော လမ်းကြောင်းပြခြင်း၏ dropdown menu ကို ပြောင်းရန်။ |
$().dropdown('update') |
ဒြပ်စင်တစ်ခု၏ dropdown အနေအထားကို အပ်ဒိတ်လုပ်သည်။ |
$().dropdown('dispose') |
ဒြပ်စင်တစ်ခု၏ dropdown ကို ဖျက်ဆီးသည်။ |
dropdown ဖြစ်ရပ်များအားလုံးကို .dropdown-menu
's ပင်မဒြပ်စင်' တွင် ပစ်လွှတ်ပြီး relatedTarget
တန်ဖိုးသည် ခလုတ်ဖွင့်ရန်နေရာတစ်ခု၏ အစိတ်အပိုင်းတစ်ခုဖြစ်သည်။ hide.bs.dropdown
နှင့် hidden.bs.dropdown
အဖြစ်အပျက်များ သည် ကလစ်ဖြစ်ရပ်အတွက် ဖြစ်ရပ်အရာဝတ္တုတစ်ခုပါရှိသည် clickEvent
(မူရင်းဖြစ်ရပ်အမျိုးအစားဖြစ်မှသာ) ပိုင်ဆိုင်မှု တစ်ခုရှိသည်။click
ပွဲ |
ဖော်ပြချက် |
show.bs.dropdown |
show instance method ကို ခေါ်သောအခါတွင် ဤဖြစ်ရပ်သည် ချက်ချင်း မီးလောင်ပါသည်။ |
shown.bs.dropdown |
dropdown ကိုအသုံးပြုသူမြင်နိုင်စေရန်ပြုလုပ်သောအခါ (CSS အပြောင်းအရွှေ့များပြီးမြောက်ရန်စောင့်ဆိုင်းပါမည်)။ |
hide.bs.dropdown |
hide instance method ကို ခေါ်သောအခါတွင် ဤဖြစ်ရပ်ကို ချက်ချင်း ရပ်စဲပါသည်။ |
hidden.bs.dropdown |
dropdown ကို အသုံးပြုသူမှ ဝှက်ထားမှုပြီးသွားသောအခါ (CSS အသွင်ကူးပြောင်းမှုများကို ပြီးမြောက်ရန် စောင့်ပါမည်)။ |