Yipada awọn agbekọja ọrọ-ọrọ fun iṣafihan awọn atokọ ti awọn ọna asopọ ati diẹ sii pẹlu ohun itanna silẹ Bootstrap.
Akopọ
Awọn isubu jẹ iyipada, awọn agbekọja ọrọ-ọrọ fun iṣafihan awọn atokọ ti awọn ọna asopọ ati diẹ sii. Wọn jẹ ibaraenisepo pẹlu ohun itanna JavaScript dropdown Bootstrap to wa. Wọn ti yipada nipasẹ titẹ, kii ṣe nipa gbigbe; eyi jẹ ipinnu apẹrẹ ero inu .
Awọn idasile ti wa ni itumọ ti lori ile-ikawe ẹnikẹta, Popper.js , eyiti o pese ipo agbara ati wiwa wiwo wiwo. Rii daju pe o ni popper.min.js ṣaaju Bootstrap's JavaScript tabi lo bootstrap.bundle.min.js/ bootstrap.bundle.jseyiti o ni Popper.js ninu. Popper.js ko lo si ipo awọn silẹ ni awọn navbars botilẹjẹpe ipo ti o ni agbara ko nilo.
Ti o ba n kọ JavaScript wa lati orisun, o niloutil.js .
Wiwọle
Boṣewa WAI ARIArole="menu" n ṣalaye ẹrọ ailorukọ gangan , ṣugbọn eyi jẹ pato si awọn akojọ aṣayan ohun elo ti o nfa awọn iṣe tabi awọn iṣẹ. Awọn akojọ aṣayan ARIA le ni awọn ohun akojọ aṣayan nikan, awọn apoti akojọ aṣayan apoti, awọn ohun akojọ aṣayan bọtini redio, awọn ẹgbẹ bọtini redio, ati awọn akojọ aṣayan-ipin.
Bootstrap's dropdowns, ni ida keji, jẹ apẹrẹ lati jẹ jeneriki ati iwulo si ọpọlọpọ awọn ipo ati awọn ẹya isamisi. Fun apẹẹrẹ, o ṣee ṣe lati ṣẹda awọn silẹ ti o ni awọn igbewọle afikun ninu ati awọn idari fọọmu, gẹgẹbi awọn aaye wiwa tabi awọn fọọmu iwọle. Fun idi eyi, Bootstrap ko nireti (tabi ṣafikun laifọwọyi) eyikeyi roleati awọn aria-abuda ti o nilo fun awọn akojọ aṣayan ARIA otitọ. Awọn onkọwe yoo ni lati ṣafikun awọn abuda kan pato diẹ sii funrararẹ.
Bibẹẹkọ, Bootstrap ṣe afikun atilẹyin ti a ṣe sinu pupọ julọ awọn ibaraenisọrọ akojọ aṣayan bọtini itẹwe, gẹgẹbi agbara lati gbe nipasẹ awọn .dropdown-itemeroja kọọkan nipa lilo awọn bọtini kọsọ ati pa akojọ aṣayan pẹlu ESCbọtini.
Awọn apẹẹrẹ
Fi ipari si toggle dropdown (bọtini tabi ọna asopọ rẹ) ati akojọ aṣayan silẹ laarin .dropdown, tabi nkan miiran ti o sọ position: relative;. Awọn idasile le jẹ okunfa lati <a>tabi <button>awọn eroja lati baamu awọn iwulo agbara rẹ dara julọ.
Bọtini ẹyọkan
Eyikeyi ẹyọkan .btnle yipada si yiyi silẹ silẹ pẹlu diẹ ninu awọn iyipada isamisi. Eyi ni bii o ṣe le fi wọn ṣiṣẹ pẹlu awọn <button>eroja mejeeji:
Bakanna, ṣẹda awọn ifasilẹ bọtini pipin pẹlu isamisi isamisi kanna bi awọn silẹ bọtini ẹyọkan, ṣugbọn pẹlu afikun .dropdown-toggle-splitfun aye to dara ni ayika itọju sisọ silẹ.
A lo kilasi afikun yii lati dinku petele paddingni ẹgbẹ mejeeji ti itọju nipasẹ 25% ati yọkuro margin-lefteyiti o ṣafikun fun awọn silẹ bọtini deede. Awọn iyipada afikun wọnyẹn jẹ ki abojuto dojukọ ni bọtini pipin ati pese agbegbe ti o ni iwọn deede diẹ sii lẹgbẹẹ bọtini akọkọ.
Awọn akoonu akojọ aṣayan silẹ itan-akọọlẹ gbọdọ jẹ awọn ọna asopọ, ṣugbọn iyẹn kii ṣe ọran mọ pẹlu v4. Bayi o le ni iyan lo <button>awọn eroja ninu rẹ dropdowns dipo ti o kan <a>s.
O tun le ṣẹda awọn ohun kan silẹ ti kii ṣe ibaraẹnisọrọ pẹlu .dropdown-item-text. Lero lati ni ara siwaju pẹlu CSS aṣa tabi awọn ohun elo ọrọ.
Nipa aiyipada, akojọ aṣayan silẹ ti wa ni ipo laifọwọyi 100% lati oke ati ni apa osi ti obi rẹ. Fikun -un .dropdown-menu-rightsi .dropdown-menuapa ọtun mö akojọ aṣayan silẹ.
Efeti sile! Dropdowns wa ni ipo ọpẹ si Popper.js (ayafi nigba ti won ti wa ni o wa ninu a navbar).
Titete idahun
Ti o ba fẹ lo titete idahun, mu ipo ti o ni agbara ṣiṣẹ nipa fifi abuda kun data-display="static"ati lo awọn kilasi iyatọ idahun.
Lati mö ọtun akojọ aṣayan silẹ pẹlu aaye fifọ ti a fun tabi tobi, ṣafikun .dropdown-menu{-sm|-md|-lg|-xl}-right.
Lati mö apa osi akojọ aṣayan silẹ pẹlu aaye fifọ ti a fun tabi tobi, ṣafikun .dropdown-menu-rightati .dropdown-menu{-sm|-md|-lg|-xl}-left.
Ṣe akiyesi pe o ko nilo lati ṣafikun abuda kan data-display="static"si awọn bọtini sisọ silẹ ni awọn navbars, nitori Popper.js ko lo ninu awọn navbars.
Akojọ akoonu
Awọn akọle
Ṣafikun akọsori kan si aami awọn apakan awọn iṣe ni eyikeyi akojọ aṣayan silẹ.
Fi ọrọ fọọmu eyikeyi sinu akojọ aṣayan silẹ pẹlu ọrọ ati lo awọn ohun elo ayeraye . Ṣe akiyesi pe o ṣeese yoo nilo awọn aṣa iwọn afikun lati ṣe idiwọ iwọn akojọ aṣayan.
Diẹ ninu awọn ọrọ apẹẹrẹ ti nṣàn ni ọfẹ laarin akojọ aṣayan silẹ.
Ati pe eyi jẹ ọrọ apẹẹrẹ diẹ sii.
Awọn fọọmu
Fi fọọmu kan sinu akojọ aṣayan silẹ, tabi ṣe sinu akojọ aṣayan silẹ, ati lo ala tabi awọn ohun elo padding lati fun ni aaye odi ti o nilo.
Nipasẹ awọn abuda data tabi JavaScript, ohun itanna sisọ silẹ yipada akoonu ti o farapamọ (awọn akojọ aṣayan silẹ) nipa yiyi .showkilaasi lori ohun atokọ obi. Ẹya data-toggle="dropdown"naa gbarale fun pipade awọn akojọ aṣayan silẹ ni ipele ohun elo, nitorinaa o jẹ imọran ti o dara lati lo nigbagbogbo.
Lori awọn ẹrọ ti a fi ọwọ kan, ṣiṣi silẹ silẹ yoo ṣafikun ofo ( $.noop) mouseoverawọn olutọju si awọn ọmọ lẹsẹkẹsẹ ti <body>nkan naa. Eleyi Admittedly ilosiwaju gige jẹ pataki lati ṣiṣẹ ni ayika a quirk ni iOS' iṣẹlẹ aṣoju , eyi ti yoo bibẹkọ ti se kan tẹ ni kia kia nibikibi ti ita ti awọn dropdown lati nfa awọn koodu ti o tilekun awọn dropdown. Ni kete ti awọn dropdown ti wa ni pipade, awọn afikun sofo mouseovermimu ti wa ni kuro.
Nipasẹ awọn abuda data
Ṣafikun data-toggle="dropdown"si ọna asopọ kan tabi bọtini lati yi jisilẹ silẹ.
Nipasẹ JavaScript
Pe awọn silẹ nipasẹ JavaScript:
data-toggle="dropdown"si tun beere
Laibikita boya o pe dropdown rẹ nipasẹ JavaScript tabi dipo lo data-api, data-toggle="dropdown"nigbagbogbo nilo lati wa lori ipin okunfa ti sisọ silẹ.
Awọn aṣayan
Awọn aṣayan le ṣee kọja nipasẹ awọn abuda data tabi JavaScript. Fun awọn abuda data, fi orukọ aṣayan si data-, bi ninu data-offset="".
Oruko
Iru
Aiyipada
Apejuwe
aiṣedeede
nọmba | okun | iṣẹ
0
Aiṣedeede ti sisọ silẹ ni ibatan si ibi-afẹde rẹ.
Nigbati a ba lo iṣẹ kan lati pinnu aiṣedeede, a pe pẹlu ohun kan ti o ni data aiṣedeede bi ariyanjiyan akọkọ rẹ. Iṣẹ naa gbọdọ da ohun kan pada pẹlu eto kanna. Ipin DOM ti o nfa ti kọja bi ariyanjiyan keji.
Gba silẹ silẹ lati yi pada ni ọran ti agbekọja lori eroja itọkasi. Fun alaye diẹ sii tọka si awọn iwe aṣẹ isipade Popper.js .
ààlà
okun | eroja
'yi lọ Obi'
Ààlà ìkálọ́wọ́kò àkúnwọ́sílẹ̀ ti àtòjọ ìsokọ̀sílẹ̀. Gba awọn iye ti 'viewport', 'window', 'scrollParent', tabi itọkasi HTMLElement (JavaScript nikan). Fun alaye diẹ sii tọka si Popper.js's preventOverflow docs .
itọkasi
okun | eroja
'yipada'
Itọkasi ano ti awọn dropdown akojọ. Gba awọn iye ti 'toggle', 'parent', tabi itọkasi HTMLElement. Fun alaye diẹ sii tọka si awọn iwe aṣẹ itọkasiObject ti Popper.js .
ifihan
okun
'ti o ni agbara'
Nipa aiyipada, a lo Popper.js fun ipo ti o ni agbara. Mu eyi ṣiṣẹ pẹlu static.
popperConfig
asan | nkan
asan
Lati yi Bootstrap aiyipada Popper.js konfigi pada, wo iṣeto Popper.js
Akiyesi nigbati boundaryo ti ṣeto si eyikeyi iye miiran ju 'scrollParent', ara ti position: staticwa ni loo si awọn .dropdowneiyan.
Awọn ọna
Ọna
Apejuwe
$().dropdown('toggle')
Yi akojọ aṣayan-silẹ ti navbar ti a fun tabi lilọ kiri taabu pada.
$().dropdown('show')
Ṣe afihan akojọ aṣayan silẹ ti navbar ti a fun tabi lilọ kiri taabu.
$().dropdown('hide')
Tọju akojọ aṣayan silẹ ti navbar ti a fun tabi lilọ kiri taabu.
$().dropdown('update')
Ṣe imudojuiwọn ipo sisọ silẹ eroja kan.
$().dropdown('dispose')
Pa ohun ano ká dropdown.
Awọn iṣẹlẹ
Gbogbo dropdown iṣẹlẹ ti wa ni kuro lenu ise ni .dropdown-menu's obi ano ati ki o ni a relatedTargetohun ini, ti iye ni toggling oran ano. hide.bs.dropdownati hidden.bs.dropdownawọn iṣẹlẹ ni ohun clickEvent-ini (nikan nigbati iru iṣẹlẹ atilẹba jẹ click) ti o ni Ohun iṣẹlẹ kan fun iṣẹlẹ tẹ.
Iṣẹlẹ
Apejuwe
show.bs.dropdown
Yi iṣẹlẹ ina lẹsẹkẹsẹ nigbati awọn show apẹẹrẹ ọna ti a npe ni.
shown.bs.dropdown
Iṣẹlẹ yii jẹ ina nigbati sisọ silẹ ti jẹ ki o han si olumulo (yoo duro fun awọn iyipada CSS, lati pari).
hide.bs.dropdown
Iṣẹlẹ yii jẹ ina lẹsẹkẹsẹ nigbati ọna apẹẹrẹ pamọ ti pe.
hidden.bs.dropdown
Iṣẹlẹ yii jẹ ina nigbati sisọ silẹ ba ti pari fifipamọ lati ọdọ olumulo (yoo duro fun awọn iyipada CSS, lati pari).