Di-dropdown tša go theoga
Fetoša dikhupetšo tša diteng bakeng sa go bontšha mananeo a dikgokagano le tše dingwe ka polaka ya go theoga ya Bootstrap.
Kakaretšo
Di-dropdown di ka fetošwa, di-overlay tša diteng tša go bontšha mananeo a dikgokagano le tše dingwe. Di dirilwe gore di be le tirišano ka plugin ya JavaScript ya go theoga ya Bootstrap yeo e akareditšwego. Di fetošwa ka go kgotla, e sego ka go hovering; ye ke phetho ya go hlama yeo e dirilwego ka boomo .
Di-dropdown di agilwe godimo ga bokgobapuku bja mokgatlo wa boraro, Popper , yeo e fago maemo a go fetoga le go utolla lefelo la go lebelela. Kgonthišetša gore o akaretša popper.min.js pele ga JavaScript ya Bootstrap goba o diriša bootstrap.bundle.min.js
/ bootstrap.bundle.js
yeo e nago le Popper. Popper ga e šomišwe go bea di-dropdown ka gare ga di-navbar le ge e le go beakanya mo go fetogago go sa nyakege.
Ge e ba o aga JavaScript ya rena go tšwa mothopong, e nyakautil.js
.
Phihlelelo
The WAI ARIA standard defines an actual role="menu"
widget , eupša se se itšego go dimenu tša go swana le tirišo tšeo di hlohleletšago ditiro goba mešomo. Dimenu tša ARIA di ka ba le fela diaetheme tša thepo, diaetheme tša thepo ya lepokisi la go hlahloba, diaetheme tša thepo ya konope ya radio, dihlopha tša dikonope tša radio, le dimenu tša ka fasana.
Di-dropdown tša Bootstrap, ka lehlakoreng le lengwe, di hlamilwe go ba tša kakaretšo le go šoma maemong a fapa-fapanego le dibopego tša go swaya. Go fa mohlala, go a kgonega go hlama dithepo te di theogago te di nago le ditseno ta tlaleleto le ditaolo ta diforomo, go swana le mafelo a go nyaka goba diforomo ta go tsena. Ka lebaka le, Bootstrap ga e letele (goba go oketša ka go iketla) efe goba efe ya role
le aria-
dika tše di nyakegago bakeng sa dimenu tša nnete tša ARIA . Bangwadi ba tla swanelwa ke go akaretša dika tše tše di lebanyago kudu ka bobona.
Le ge go le bjalo, Bootstrap e tlaleletša thekgo ye e agetšwego ka gare ya bontši bja ditirišano tša thepo ya khiiboto ya maemo, go swana le bokgoni bja go sepela ka .dropdown-item
dielemente ka botee ka go šomiša dinotlelo tša khesara le go tswalela thepo ka ESCsenotlelo.
Mehlala
Phuthelela toggle ya go theoga (konope ya gago goba kgokagano) le thepo ya go theoga ka gare ga .dropdown
, goba elemente ye nngwe yeo e tsebagatšago position: relative;
. Di-dropdown di ka hlohleletša go tšwa <a>
goba <button>
dielemente go swanela gakaone dinyakwa tša gago tšeo di ka bago gona.
Konopo e le nngwe
Sefe goba sefe se tee se .btn
ka fetošetšwa go toggle ya go theoga ka diphetogo tše dingwe tša go swaya. Ke kamoo o ka di beago ka gona go šoma ka <button>
dielemente tše dingwe le tše dingwe:
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-expanded="false">
Dropdown button
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
Le ka <a>
dielemente:
<div class="dropdown">
<a class="btn btn-secondary dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-expanded="false">
Dropdown link
</a>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
Karolo e kaone ke gore o ka dira se ka mohuta ofe goba ofe wa konope, le wena:
<!-- Example single danger button -->
<div class="btn-group">
<button type="button" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Action
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
</div>
Arola konopo
Ka mo go swanago, hlama di-dropdown tša konope ya go arogana ka go nyakile go swana le go swaya mo go swanago le go theoga ga konope e tee, eupša ka tlaleletšo ya .dropdown-toggle-split
bakeng sa sekgoba se se swanetšego go dikologa caret ya go theoga.
Re diriša sehlopha se sa tlaleletšo go fokotša go rapalala padding
ka mahlakoreng ka bobedi a caret ka 25% le go tloša margin-left
seo se okeditšwego bakeng sa di-dropdown tša konope tša ka mehla. Diphetogo tšeo tše oketšegilego di boloka caret e le bogareng bja konotswana yeo e arotšwego gomme e nea lefelo la go otla leo le nago le bogolo bjo bo swanetšego kudu kgaufsi le konotswana e kgolo.
<!-- Example split danger button -->
<div class="btn-group">
<button type="button" class="btn btn-danger">Action</button>
<button type="button" class="btn btn-danger dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
</div>
Go lekanyetša bogolo
Dikonope tša go theoga di šoma ka dikonope tša bogolo ka moka, go akaretšwa dikonope tša go theoga tša go se fetoge le tša go arogana.
<!-- Large button groups (default and split) -->
<div class="btn-group">
<button class="btn btn-secondary btn-lg dropdown-toggle" type="button" data-toggle="dropdown" aria-expanded="false">
Large button
</button>
<div class="dropdown-menu">
...
</div>
</div>
<div class="btn-group">
<button class="btn btn-secondary btn-lg" type="button">
Large split button
</button>
<button type="button" class="btn btn-lg btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
...
</div>
</div>
<!-- Small button groups (default and split) -->
<div class="btn-group">
<button class="btn btn-secondary btn-sm dropdown-toggle" type="button" data-toggle="dropdown" aria-expanded="false">
Small button
</button>
<div class="dropdown-menu">
...
</div>
</div>
<div class="btn-group">
<button class="btn btn-secondary btn-sm" type="button">
Small split button
</button>
<button type="button" class="btn btn-sm btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
...
</div>
</div>
Ditaelo
Dropup ya go lahlela
Hlohleletša dimenu tša go theoga ka godimo ga dielemente ka go tlaleletša .dropup
go elemente ya motswadi.
<!-- Default dropup button -->
<div class="btn-group dropup">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Dropup
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
<!-- Split dropup button -->
<div class="btn-group dropup">
<button type="button" class="btn btn-secondary">
Split dropup
</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
Tokelo ya go theoga
Hlohleletša dimenu tša go theoga ka go le letona la dielemente ka go tlaleletša .dropright
go elemente ya motswadi.
<!-- Default dropright button -->
<div class="btn-group dropright">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Dropright
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
<!-- Split dropright button -->
<div class="btn-group dropright">
<button type="button" class="btn btn-secondary">
Split dropright
</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropright</span>
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
Dropleft ya go theoga
Hlohleletša dimenu tša go theoga ka go la nngele la dielemente ka go tlaleletša .dropleft
go elemente ya motswadi.
<!-- Default dropleft button -->
<div class="btn-group dropleft">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Dropleft
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
<!-- Split dropleft button -->
<div class="btn-group">
<div class="btn-group dropleft">
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false">
<span class="sr-only">Toggle Dropleft</span>
</button>
<div class="dropdown-menu">
<!-- Dropdown menu links -->
</div>
</div>
<button type="button" class="btn btn-secondary">
Split dropleft
</button>
</div>
Diaetheme tša menu
Go ya ka histori dikagare tša thepo ya go theoga di be di swanetše go ba dikgokagano, eupša seo ga se sa le bjalo ka v4. Bjale o ka šomiša ka boikgethelo <button>
dielemente ka go dithepo tša gago go e na le <a>
s fela.
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-expanded="false">
Dropdown
</button>
<div class="dropdown-menu">
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>
</div>
O ka hlama gape diaetheme tša go theoga tšeo e sego tša tirišano ka .dropdown-item-text
. Ikwe o lokologile go setaele go ya pele ka CSS ya tlwaelo goba didirišwa tša sengwalwa.
<div class="dropdown-menu">
<span class="dropdown-item-text">Dropdown item text</span>
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
Mafolofolo
Oketša .active
go diaetheme ka go theoga go di setaele bjalo ka tše di šomago .
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Regular link</a>
<a class="dropdown-item active" href="#">Active link</a>
<a class="dropdown-item" href="#">Another link</a>
</div>
Šitišitšwe
Oketša .disabled
go diaetheme ka go theoga go di setaele bjalo ka tše di golofetšego .
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Regular link</a>
<a class="dropdown-item disabled">Disabled link</a>
<a class="dropdown-item" href="#">Another link</a>
</div>
Go logaganya menu
Ka go ikemela, thepo ya go theoga e bewa ka go iketla 100% go tšwa godimo le go bapa le lehlakore la nngele la motswadi wa yona. Oketša .dropdown-menu-right
go a go ya .dropdown-menu
go le letona logaganya thepo ya go theoga.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Right-aligned menu
</button>
<div class="dropdown-menu dropdown-menu-right">
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>
</div>
Go logaganya mo go arabelago
Ge o nyaka go šomiša go logaganya ga go arabela, šitiša go beakanya ga go fetoga ka go oketša data-display="static"
seka gomme o šomiše diklase tša phapano ya go arabela.
Go logaganya ka go le letona thepo ya go theoga le ntlha ya go kgaotša ye e filwego goba ye kgolo, oketša .dropdown-menu{-sm|-md|-lg|-xl}-right
.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" data-display="static" aria-expanded="false">
Left-aligned but right aligned when large screen
</button>
<div class="dropdown-menu dropdown-menu-lg-right">
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>
</div>
Go logaganya thepo ya go theoga ya nngele.dropdown-menu-right
le ntlha ya go kgaotša ye e filwego goba ye kgolo, oketša le .dropdown-menu{-sm|-md|-lg|-xl}-left
.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" data-display="static" aria-expanded="false">
Right-aligned but left aligned when large screen
</button>
<div class="dropdown-menu dropdown-menu-right dropdown-menu-lg-left">
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>
</div>
Hlokomela gore ga o hloke go oketša data-display="static"
seka go dikonope tša go theoga ka go di-navbar, ka ge Popper e sa šomišwe ka go di-navbar.
Diteng tša menu
Dihlogo tša dihlogo
Oketša hlogo go leina dikarolo tša ditiro ka go thepo efe goba efe ya go theoga.
<div class="dropdown-menu">
<h6 class="dropdown-header">Dropdown header</h6>
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
</div>
Dikaroganyo
Aroganya dihlopha tša dintho tša menu tše di amanago ka karoganyo.
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
Sengwalwa
Bea sengwalwa sefe goba sefe sa sebopego sa go se lefelwe ka gare ga thepo ya go theoga ka sengwalwa gomme o šomiše didirišwa tša sekgoba . Hlokomela gore go na le kgonagalo ya gore o tla nyaka mekgwa ya tlaleletšo ya go lekanyetša bogolo go thibela bophara bja thepo.
<div class="dropdown-menu p-4 text-muted" style="max-width: 200px;">
<p>
Some example text that's free-flowing within the dropdown menu.
</p>
<p class="mb-0">
And this is more example text.
</p>
</div>
Diforomo
Bea foromo ka gare ga thepo ya go theoga, goba o e dire gore e be thepo ya go theoga, gomme o šomiše didirišwa tša mošito goba tša go tlatša go e fa sekgoba se sebe seo o se nyakago.
<div class="dropdown-menu">
<form class="px-4 py-3">
<div class="form-group">
<label for="exampleDropdownFormEmail1">Email address</label>
<input type="email" class="form-control" id="exampleDropdownFormEmail1" placeholder="[email protected]">
</div>
<div class="form-group">
<label for="exampleDropdownFormPassword1">Password</label>
<input type="password" class="form-control" id="exampleDropdownFormPassword1" placeholder="Password">
</div>
<div class="form-group">
<div class="form-check">
<input type="checkbox" class="form-check-input" id="dropdownCheck">
<label class="form-check-label" for="dropdownCheck">
Remember me
</label>
</div>
</div>
<button type="submit" class="btn btn-primary">Sign in</button>
</form>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">New around here? Sign up</a>
<a class="dropdown-item" href="#">Forgot password?</a>
</div>
<form class="dropdown-menu p-4">
<div class="form-group">
<label for="exampleDropdownFormEmail2">Email address</label>
<input type="email" class="form-control" id="exampleDropdownFormEmail2" placeholder="[email protected]">
</div>
<div class="form-group">
<label for="exampleDropdownFormPassword2">Password</label>
<input type="password" class="form-control" id="exampleDropdownFormPassword2" placeholder="Password">
</div>
<div class="form-group">
<div class="form-check">
<input type="checkbox" class="form-check-input" id="dropdownCheck2">
<label class="form-check-label" for="dropdownCheck2">
Remember me
</label>
</div>
</div>
<button type="submit" class="btn btn-primary">Sign in</button>
</form>
Dikgetho tša go theoga
Šomiša data-offset
goba data-reference
go fetoša lefelo la go theoga.
<div class="d-flex">
<div class="dropdown mr-1">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false" data-offset="10,20">
Offset
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
<div class="btn-group">
<button type="button" class="btn btn-secondary">Reference</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-expanded="false" data-reference="parent">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
</div>
</div>
Tšhomišo
Ka dika tša datha goba JavaScript, polaka ya go theoga e fetoša diteng tše di utilwego (dimenu tša go theoga) ka go fetoša .show
sehlopha go motswadi .dropdown-menu
. Sebopego data-toggle="dropdown"
se ithekgile ka go tswalela dimenu tša go theoga maemong a tirišo, ka fao ke kgopolo ye botse go se šomiša ka mehla.
$.noop
)
mouseover
go bana ba kgaufsi ba
<body>
elemente. This admittedly ugly hack is necessary to work around a
quirk in iOS’ event delegation , e leng ka tsela e nngwe e ne e tla thibela pompo kae kapa kae ka ntle ho dropdown ho qholotsa khoutu e koala dropdown. Ge go šetše go tswaletšwe, didirišwa tše tša tlaleletšo tše di se nago selo
mouseover
di a tlošwa.
Ka dika ya data
Oketša data-toggle="dropdown"
go kgokagano goba konope go fetoša go theoga.
<div class="dropdown">
<button type="button" data-toggle="dropdown" aria-expanded="false">
Dropdown trigger
</button>
<div class="dropdown-menu">
...
</div>
</div>
Ka JavaScript
Bitša di-drolodown ka JavaScript:
$('.dropdown-toggle').dropdown()
data-toggle="dropdown"
e sa dutše e nyakega
Go sa šetšwe gore o bitša dropdown ya gago ka JavaScript goba go e na le moo o diriša data-api, data-toggle="dropdown"
go nyakega ka mehla go ba gona go elemente ya go hlohleletša ya dropdown.
Dikgetho
Dikgetho di ka fetišwa ka dika tša datha goba JavaScript. Bakeng sa dika tša datha, tlaleletša leina la kgetho go data-
, bjalo ka go data-offset=""
.
Leina | Mohuta | Hlokomologa | Tlhalošo |
---|---|---|---|
offset | nomoro ya | thapo ya | mošomo | 0. | Offset ya dropdown leloko le sepheo lona. Ge mošomo o šomišwa go laetša offset, o bitšwa ka selo seo se nago le datha ya offset bjalo ka ngangišano ya yona ya mathomo. Mošomo o swanetše go bušetša selo seo se nago le sebopego se se swanago. The qholotsa elements DOM noutu e fetisoa e le ngangišano ya bobedi. Bakeng sa tshedimošo ye ntši lebelela ditokomane tša offset tša Popper . |
phepheula | boolean ya go swana | nnete | Dumelela Dropdown go flip ge go ka ba le go swana godimo ga elemente ya tšhupetšo. Bakeng sa tshedimošo e oketšegilego lebelela di -flip docs tša Popper . |
mollwane | thapo ya | ntlha | 'Motswadi wa go kgokološa'. | Moedi wa thibelo ya go tlala wa thepo ya go theoga. E amogela dikelo tša 'viewport' , 'window' , 'scrollParent' , goba tšhupetšo ya HTMLElement (JavaScript fela). Bakeng sa tshedimošo ye ntši lebelela ditokomane tša preventOverflow tša Popper . |
tšhupetšo | thapo ya | ntlha | 'toggle'. | Reference elements ya menu ya go theoga. E amogela dikelo tša 'toggle' , 'parent' , goba tšhupetšo ya HTMLElement. Bakeng sa tshedimošo ye ntši lebelela ditokomane tša Popper's referenceObject . |
bontšha | thapo | 'dynamic'. | Ka default, re sebelisa Popper bakeng sa boemo ba mafolofolo. Thibela se ka static . |
popperConfig ya go swana le yona | lefeela | selo | ya lefela | Go fetoša peakanyo ya Popper ya go se fetoge ya Bootstrap, bona peakanyo ya Popper |
Hlokomela ge boundary
e beakantšwe go boleng bjo bongwe le bjo bongwe ntle le 'scrollParent'
, setaele position: static
se dirišwa go .dropdown
setshelo.
Mekgwa ya go šoma
Mokgwa | Tlhalošo |
---|---|
$().dropdown('toggle') |
E fetola thepo ya go theoga ya navbar ye e filwego goba go sepelasepela ga dithepo. |
$().dropdown('show') |
E bontšha thepo ya go theoga ya navbar ye e filwego goba go sepelasepela ka dithepo. |
$().dropdown('hide') |
E uta thepo ya go theoga ya navbar ye e filwego goba go sepelasepela ga dithepo. |
$().dropdown('update') |
E mpshafatša maemo a go theoga ga elemente. |
$().dropdown('dispose') |
E senya go theoga ga elemente. |
Ditiragalo
Ditiragalo ka moka tša go theoga di thuntšhwa go .dropdown-menu
elemente ya motswadi ya 's gomme di na le relatedTarget
thepa, yeo boleng bja yona e lego elemente ya ankora ya go fetoša. hide.bs.dropdown
gomme hidden.bs.dropdown
ditiragalo di na le clickEvent
thepa (feela ge mohuta wa tiragalo ya mathomo e le click
) yeo e nago le Selo sa Tiragalo sa tiragalo ya go klika.
Tiragalo | Tlhalošo |
---|---|
show.bs.dropdown |
Tiragalo ye e thunya ka pela ge mokgwa wa mohlala wa pontšho o bitšwa. |
shown.bs.dropdown |
Tiragalo ye e thuntšhwa ge go theoga go dirilwe gore go bonagale go modiriši (e tla emela diphetogo tša CSS, go phetha). |
hide.bs.dropdown |
Tiragalo ye e thuntšhwa ka pela ge mokgwa wa go uta mohlala o biditšwe. |
hidden.bs.dropdown |
Tiragalo ye e thuntšhwa ge go theoga go feditše go utollwa go tšwa go modiriši (e tla emela diphetogo tša CSS, go phetha). |
$('#myDropdown').on('show.bs.dropdown', function () {
// do something...
})