I-toggle ang mga overlay sa konteksto para sa pagpakita sa mga lista sa mga link ug uban pa gamit ang Bootstrap dropdown plugin.
Overview
Ang mga dropdown kay ma-toggle, contextual overlay para sa pagpakita sa mga lista sa mga link ug uban pa. Gihimo sila nga interactive sa gilakip nga Bootstrap dropdown JavaScript plugin. Gibalhin sila pinaagi sa pag-klik, dili pinaagi sa pag-hover; kini usa ka tinuyo nga desisyon sa disenyo .
Ang mga dropdown gitukod sa usa ka ikatulo nga partido nga librarya, Popper.js , nga naghatag og dinamikong posisyon ug pagtan-aw sa viewport. Siguroha nga iapil ang popper.min.js sa dili pa ang JavaScript sa Bootstrap o gamiton bootstrap.bundle.min.js/ bootstrap.bundle.jsnga adunay Popper.js. Ang Popper.js wala gigamit sa pagpahimutang sa mga dropdown sa mga navbar bisan kung dili kinahanglan ang dinamikong pagpoposisyon.
Ang WAI ARIA nga sumbanan naghubit sa usa ka aktuwal nga role="menu"widget , apan kini espesipiko sa mga menu nga sama sa aplikasyon nga nagpalihok sa mga aksyon o mga gimbuhaton. Ang mga menu sa ARIA mahimo ra nga adunay mga butang sa menu, mga butang sa menu sa checkbox, mga butang sa menu sa radio button, mga grupo sa radio button, ug mga sub-menu.
Ang mga dropdown sa Bootstrap, sa laing bahin, gidisenyo nga mahimong generic ug magamit sa lain-laing mga sitwasyon ug markup structures. Pananglitan, posible ang paghimo og mga dropdown nga adunay dugang nga mga input ug mga kontrol sa porma, sama sa mga natad sa pagpangita o mga porma sa pag-login. Tungod niini nga rason, ang Bootstrap wala magdahom (ni awtomatik nga makadugang) sa bisan unsa roleug mga aria-hiyas nga gikinahanglan para sa tinuod nga ARIA nga mga menu. Kinahanglang ilakip sa mga tagsulat kining mas espesipikong mga hiyas sa ilang kaugalingon.
Bisan pa, ang Bootstrap nagdugang sa built-in nga suporta alang sa kadaghanan sa mga standard nga keyboard nga mga interaksyon sa menu, sama sa abilidad sa paglihok sa indibidwal .dropdown-itemnga mga elemento gamit ang mga yawe sa cursor ug isira ang menu gamit ang ESCyawe.
Mga pananglitan
I-wrap ang toggle sa dropdown (imong buton o link) ug ang dropdown menu sulod sa .dropdown, o laing elemento nga nagpahayag position: relative;. Ang mga dropdown mahimong ma-trigger gikan sa <a>o <button>mga elemento aron mas mohaum sa imong potensyal nga mga panginahanglan.
Usa ka butones
Ang bisan unsang single .btnmahimo nga usa ka dropdown toggle nga adunay pipila nga mga pagbag-o sa markup. Ania kung giunsa nimo kini magamit sa bisan unsang <button>mga elemento:
Sa susama, paghimo og split button dropdowns nga adunay halos parehas nga markup sa single button nga dropdowns, apan uban ang pagdugang sa .dropdown-toggle-splitpara sa saktong spacing sa palibot sa dropdown caret.
Gigamit namo kini nga dugang nga klase aron makunhuran ang pinahigda paddingsa bisan asa nga kilid sa caret sa 25% ug tangtangon ang margin-leftgidugang alang sa regular nga mga dropdown sa buton. Kadtong dugang nga mga pagbag-o nagpadayon sa caret nga nakasentro sa split button ug naghatag usa ka mas tukma nga gidak-on nga hit nga lugar sunod sa main button.
Ang mga sulud sa dropdown menu sa kasaysayan kinahanglan nga mga link, apan dili na kana ang kaso sa v4. Karon mahimo nimong gamiton ang <button>mga elemento sa imong mga dropdown imbis nga <a>s.
Makahimo ka usab og dili interactive nga dropdown nga mga butang nga adunay .dropdown-item-text. Mobati nga gawasnon sa pag-istilo sa dugang gamit ang custom CSS o text utilities.
Sa kasagaran, ang usa ka dropdown menu awtomatik nga gipahimutang 100% gikan sa ibabaw ug ubay sa wala nga bahin sa ginikanan niini. Idugang .dropdown-menu-rightsa usa .dropdown-menungadto sa tuo nga i-align ang dropdown menu.
Taas ang ulo! Gipahimutang ang mga dropdown salamat sa Popper.js (gawas kung kini anaa sa usa ka navbar).
Responsive alignment
Kung gusto nimo gamiton ang responsive alignment, disable dynamic positioning pinaagi sa pagdugang sa data-display="static"attribute ug gamita ang responsive variation classes.
Aron i-align sa tuo ang dropdown menu sa gihatag nga breakpoint o mas dako, idugang .dropdown-menu{-sm|-md|-lg|-xl}-right.
Aron i-align sa wala ang dropdown menu sa gihatag nga breakpoint o mas dako, idugang .dropdown-menu-rightug .dropdown-menu{-sm|-md|-lg|-xl}-left.
Timan-i nga dili nimo kinahanglan nga magdugang ug data-display="static"attribute sa mga dropdown button sa navbars, tungod kay ang Popper.js wala gigamit sa navbars.
Kontento sa menu
Mga ulohan
Pagdugang og usa ka header sa pag-label sa mga seksyon sa mga aksyon sa bisan unsang dropdown menu.
Ibutang ang bisan unsang libre nga porma nga teksto sa sulod sa usa ka dropdown menu nga adunay teksto ug gamita ang mga gamit sa spacing . Timan-i nga lagmit kinahanglan nimo ang dugang nga mga istilo sa pagsukod aron mapugngan ang gilapdon sa menu.
Pipila ka pananglitan nga teksto nga libre nga nagdagayday sulod sa dropdown menu.
Ug kini usa pa ka pananglitan nga teksto.
Mga porma
Ibutang ang usa ka porma sulod sa dropdown menu, o himoa kini nga dropdown menu, ug gamita ang margin o padding utilities aron mahatagan kini og negatibong luna nga imong gikinahanglan.
Pinaagi sa data attributes o JavaScript, ang dropdown plugin mo-toggle sa tinago nga content (dropdown menus) pinaagi sa pag-toggle sa .showklase sa parent list item. Ang data-toggle="dropdown"hiyas gisaligan alang sa pagsira sa mga dropdown menu sa lebel sa aplikasyon, mao nga maayong ideya nga gamiton kini kanunay.
Sa touch-enabled nga mga device, ang pag-abli sa dropdown magdugang og walay sulod ( $.noop) mouseovernga mga tigdumala sa mga anak sa <body>elemento. Kining giangkon nga mangil-ad nga hack gikinahanglan aron masulbad ang usa ka quirk sa delegasyon sa panghitabo sa iOS , nga kung dili makapugong sa usa ka gripo bisan asa sa gawas sa dropdown gikan sa pag-trigger sa code nga nagsira sa dropdown. Kung sirado na ang dropdown, kining mga dugang nga walay sulod nga mouseovermga handler kuhaon.
Pinaagi sa data attributes
Idugang data-toggle="dropdown"sa usa ka link o buton aron i-toggle ang dropdown.
Pinaagi sa JavaScript
Tawga ang mga dropdown pinaagi sa JavaScript:
data-toggle="dropdown"gikinahanglan pa
Dili igsapayan kung imong tawagan ang imong dropdown pinaagi sa JavaScript o sa baylo nga gamiton ang data-api, data-toggle="dropdown"kinahanglan kanunay nga naa sa elemento sa pag-trigger sa dropdown.
Mga kapilian
Mahimong ipasa ang mga kapilian pinaagi sa data attributes o JavaScript. Para sa data attributes, idugang ang opsyon nga ngalan sa data-, sama sa data-offset="".
Ngalan
Matang
Default
Deskripsyon
offset
numero | hilo | function
0
Offset sa dropdown kalabot sa target niini.
Kung ang usa ka function gigamit aron mahibal-an ang offset, gitawag kini nga adunay usa ka butang nga adunay sulud nga data sa offset ingon una nga argumento. Kinahanglang ibalik sa function ang usa ka butang nga adunay parehas nga istruktura. Ang triggering element nga DOM node gipasa isip ikaduhang argumento.
Alang sa dugang nga impormasyon tan-awa ang Popper.js's offset docs .
paltik
boolean
tinuod
Tugoti ang Dropdown nga mag-flip kung adunay nagsapaw sa reference nga elemento. Alang sa dugang nga impormasyon tan-awa ang Popper.js's flip docs .
utlanan
hilo | elemento
'scrollParent'
Ang pag-awas sa limitasyon sa dropdown menu. Gidawat ang mga kantidad sa 'viewport', 'window', 'scrollParent', o usa ka HTMLElement reference (JavaScript lang). Alang sa dugang nga impormasyon tan-awa ang Popper.js's preventOverflow docs .
pakisayran
hilo | elemento
'toggle'
Reference nga elemento sa dropdown menu. Gidawat ang mga kantidad sa 'toggle', 'parent', o usa ka reference sa HTMLElement. Alang sa dugang nga impormasyon tan-awa ang Popper.js's referenceObject docs .
display
hilo
'dinamikong'
Sa kasagaran, gigamit namo ang Popper.js alang sa dinamikong pagpoposisyon. I-disable kini gamit ang static.
Timan-i kung kanus boundary-a gibutang sa bisan unsang kantidad gawas sa 'scrollParent', ang istilo position: staticgipadapat sa .dropdownsulud.
Pamaagi
Pamaagi
Deskripsyon
$().dropdown('toggle')
I-toggle ang dropdown menu sa gihatag nga navbar o tabbed navigation.
$().dropdown('show')
Nagpakita sa dropdown menu sa gihatag nga navbar o tabbed navigation.
$().dropdown('hide')
Gitagoan ang dropdown menu sa gihatag nga navbar o tabbed navigation.
$().dropdown('update')
Gi-update ang posisyon sa dropdown sa usa ka elemento.
$().dropdown('dispose')
Giguba ang dropdown sa usa ka elemento.
Mga panghitabo
Ang tanan nga dropdown nga mga panghitabo gipabuthan sa .dropdown-menuelemento sa ginikanan ug adunay relatedTargetkabtangan, kansang bili mao ang toggling anchor nga elemento. hide.bs.dropdownug hidden.bs.dropdownang mga panghitabo adunay usa ka clickEventkabtangan (lamang kung ang orihinal nga tipo sa panghitabo mao ang click) nga adunay sulod nga usa ka Event Object para sa click nga panghitabo.
Panghitabo
Deskripsyon
show.bs.dropdown
Kini nga panghitabo modilaab dayon kung ang paagi sa pagpakita nga pananglitan gitawag.
shown.bs.dropdown
Kini nga panghitabo gipabuto kung ang dropdown nahimo nga makita sa tiggamit (maghulat alang sa mga transisyon sa CSS, aron makompleto).
hide.bs.dropdown
Kini nga panghitabo gipabuto dayon kung ang paagi sa pagtago sa pananglitan gitawag na.
hidden.bs.dropdown
Kini nga panghitabo gipabuto kung ang dropdown nahuman na nga gitago gikan sa user (maghulat alang sa mga transisyon sa CSS, aron makompleto).