Beddel dulsaarka macnaha guud si aad u muujiso liisaska isku xidhka iyo in ka badan oo leh Bootstrap-ka hoos u dhaca.
Dulmar
Hoosudhaca waa la rogi karaa, dulsaar macnaha guud ee muujinta liisaska isku xirka iyo wax ka badan. Waxa lagu sameeyay is dhexgal oo ay ku jiraan Bootstrap dropdown JavaScript plugin. Waxay ku rogaan gujisyada, ma aha inay dul heehaabayaan; kani waa go'aan naqshadayn ula kac ah .
Hoosudhaca waxaa lagu dhisay maktabad qolo saddexaad, Popper.js , taas oo bixisa meelayn firfircoon iyo ogaanshaha aragtida. Hubi inaad ku darto popper.min.js ka hor Bootstrap's JavaScript ama isticmaal bootstrap.bundle.min.js/ bootstrap.bundle.jska kooban Popper.js. Popper.js looma isticmaalo in lagu dhigo hoos-u-dhacyada navbar-yada inkasta oo meelaynta firfircooni aan loo baahnayn.
Halbeegga WAI ARIA waxa uu qeexayaa role="menu"widget -ka dhabta ah , laakiin kani waxa uu gaar u yahay menu-yada codsiga u eg ee kiciya falalka ama hawlaha. Liiska ARIA waxa ka koobnaan kara oo keliya shayada menu-ka, shayga liiska sanduuqa, shayada badhanka raadiyaha, kooxaha badhanka raadiyaha, iyo menus-hoosaadka.
Bootstrap's dropdowns, dhanka kale, waxaa loo qaabeeyey inay noqdaan kuwo guud oo lagu dabaqi karo xaalado kala duwan iyo qaab-dhismeedka calaamadaynta. Tusaale ahaan, waxa suurtagal ah in la abuuro hoos u dhacyo ka kooban waxyaabo dheeraad ah iyo kontaroolada qaabaynta, sida goobaha wax laga raadiyo ama foomamka gelitaanka. Sababtan awgeed, Bootstrap ma filayo (ama si toos ah ugu darin) mid ka mid ah roleiyo aria-sifooyinka looga baahan yahay liiska ARIA ee runta ah. Qorayaashu waa inay ku daraan sifooyin gaar ah laftooda.
Si kastaba ha ahaatee, Bootstrap wuxuu ku daraa taageerada gudaha inta badan isdhexgalka menu-ka caadiga ah ee kiiboodhka, sida awoodda lagu dhex maro .dropdown-itemwalxaha shakhsi ahaaneed iyadoo la adeegsanayo furayaasha cursorka oo ku xidh liiska ESCfuraha.
Tusaalooyinka
Isku duub beddelka hoos u dhaca (badhankaaga ama xidhiidhka) iyo liiska hoos u dhaca ee gudaha .dropdown, ama shay kale oo sheegaya position: relative;. Hoos-u-dhac ayaa laga kicin karaa <a>ama <button>canaasiirta si ay si fiican ugu habboonaato baahiyahaaga suurtagalka ah.
Hal badhan
Mid kasta .btnwaxa loo rogi karaa beddelka hoos u dhaca oo leh waxoogaa isbeddello ah. Waa kuwan sida aad uga dhigi karto inay ku shaqeeyaan labada <button>shay:
Sidoo kale, samee badhanka kala qaybsan ee hoos u dhaca oo leh wax la mid ah kuwa hoos u dhaca badhanka, laakiin lagu daro .dropdown-toggle-splitkala dheeraynta saxda ah ee ku wareegsan daryeelka hoos u dhaca.
Waxaan u isticmaalnaa fasalkan dheeraadka ah si aan u dhimno jiifka paddinglabada dhinac ee daryeelka 25% oo aan ka saarno margin-leftwaxa lagu daray hoos u dhigista badhanka caadiga ah. Isbeddelladaas dheeriga ah waxay xannaanada ku hayaan badhanka kala qaybsan waxayna bixiyaan meel si habboon u cabbiran oo ku dheggan badhanka weyn.
Taariikh ahaan liiska liiska hoos u dhigida waxa ku jira waa inay ahaadaan xiriiriyayaal, laakiin taasi hadda maahan kiiska v4. Hadda waxaad si ikhtiyaari ah u isticmaali kartaa <button>walxaha hoos u dhacaaga halkii aad ka isticmaali lahayd <a>s.
Waxa kale oo aad ku abuuri kartaa waxyaabaha hoos u dhaca ee aan is dhexgal ahayn .dropdown-item-text. Dareen xor u ah in aad ku sii habayso CSS caadadii ama adeegaha qoraalka.
Sida caadiga ah, liiska hoos u dhaca waxa si toos ah loo dhigayaa 100% xagga sare iyo dhinaca bidix ee waalidkiisa. Ku dar .dropdown-menu-righta .dropdown-menuto midig toosi liiska hoos u dhaca.
Madaxa kor u qaad! Hoos-u-dhacyada waxaa la dhigay mahadsanid Popper.js (marka laga reebo marka ay ku jiraan navbar).
Dhig qoraal kasta oo qaab bilaash ah gudaha liiska hoos-u-dhaca oo leh qoraal isticmaalna utility kala dheereynta . Ogsoonow inaad u badan tahay inaad u baahan doonto qaabab cabbir oo dheeri ah si aad u xaddiddo ballaca menu-ka.
Tusaalooyin qoraal ah oo bilaash ah ayaa ku dhex jira liiska hoos u dhaca.
Tanina waa tusaale dheeraad ah oo qoraal ah.
Foomamka
Geli foom gudaha liiska hoos u dhaca, ama ka samee liiska hoos u dhaca, oo isticmaal margin ama padding utilities si aad u siiso booska taban ee aad u baahan tahay.
Iyada oo loo marayo sifooyinka xogta ama JavaScript, plugin-ka hoos-u-dhaca wuxuu beddelaa nuxurka qarsoon (menus-ka-soo-celinta) isagoo beddelaya .showfasalka shayga liiska waalidka. Sifada data-toggle="dropdown"waxay ku tiirsan tahay xidhitaanka liiska hoos u dhaca ee heerka codsiga, markaa waa fikrad wanaagsan in had iyo jeer la isticmaalo.
Aaladaha la taabto, furista hoos u dhaca waxay ku dartaa maareeyayaal madhan ( $.noop) mouseoverubadka <body>curiyaha ah. Tani waxay qirtay jabsiga fool xun waa lagama maarmaan in ay ka shaqeeyaan agagaarka quirk ah ee iOS' waftiga dhacdo , taas oo haddii kale ka hortagi lahaa tuubada meel kasta oo ka baxsan hoos-u-dhicidda ka kiciya code in xidho hoos u dhaca ah. Marka hoos u dhigista la xiro, kuwan dheeraadka ah mouseoveree gacanta ku haya waa la saarayaa.
Iyada oo loo marayo sifooyinka xogta
Ku dar data-toggle="dropdown"xiriiriye ama badhan si aad u beddesho hoos u dhaca.
Iyadoo loo marayo JavaScript
Hoos ka wac JavaScript:
data-toggle="dropdown"weli loo baahan yahay
Iyadoo aan loo eegin haddii aad ugu wacdo hoos u dhigistaada JavaScript ama aad isticmaasho xogta-api, data-toggle="dropdown"had iyo jeer waxaa looga baahan yahay inaad ku jirto qaybta kicinta ee hoos u dhaca.
Ikhtiyaarada
Ikhtiyaarada waxaa lagu gudbi karaa sifada xogta ama JavaScript. Sifooyinka xogta, ku dheji magaca ikhtiyaarka data-, sida ku jira data-offset="".
Magaca
Nooca
Asal ahaan
Sharaxaada
dhimis
lambarka | xadhig | shaqayn
0
Deminta hoos u dhaca marka loo eego bartilmaameedkiisa.
Marka shaqada loo isticmaalo in lagu go'aamiyo dhimista, waxaa loogu yeeraa shay ay ku jiraan xogta ka-dhaafka ah sida dooddeeda koowaad. Shaqadu waa in ay soo celisaa shay leh qaab isku mid ah. Xubinta kicinta ee DOM node waxa loo gudbiyaa sidii doodda labaad.
Wixii macluumaad dheeraad ah ka eeg dukumeentiyada dhimista ee Popper.js .
rogo
booliyan
run
Oggolow hoos u dhigida inuu rogo haddii ay dhacdo in ay is dul saaran yihiin qaybta tixraaca. Wixii macluumaad dheeraad ah ka eeg dukumeentiyada rogroga ee Popper.js .
xuduud
xadhig | curiye
'waalidiinta'
Xadka xad-dhaafka ah ee xaddidaadda liiska hoos u dhaca. Aqbala qiyamka 'viewport', 'window', 'scrollParent', ama tixraaca HTMLElement (JavaScript kaliya). Macluumaad intaas ka badan ka eeg dukumeentiyada Popper.js ee ka hortagga qulqulka .
tixraac
xadhig | curiye
'rogid'
Cunsurka tixraaca ee liiska hoos u dhaca. Aqbala qiyamka 'toggle', 'parent', ama tixraaca HTMLElement. Macluumaad intaas ka badan ka eeg dukumeentiyada Popper.js ee tixraacaObject .
bandhig
xadhig
'firfircoon'
Sida caadiga ah, waxaan u isticmaalnaa Popper.js meelaynta firfircoon. Ku dami tan static.
popperConfig
waxba | walax
waxba
Si aad u bedesho Bootstrap's default Popper.js config, arag qaabka Popper.js
Ogow marka boundarylagu dejiyo qiimo kasta oo aan ahayn 'scrollParent', qaabka position: staticwaxa lagu dabaqayaa .dropdownweelka.
Hababka
Habka
Sharaxaada
$().dropdown('toggle')
Wuxuu rogaa liiska hoos-u-dhaca ee navbar la bixiyay ama navigation tab.
$().dropdown('show')
Wuxuu muujiyaa liiska hoos-u-dhaca ee navbar la bixiyay ama navigation tab.
$().dropdown('hide')
Wuxuu qariyaa liiska hoos u dhaca ee navbar la bixiyay ama navigation tab.
$().dropdown('update')
Waxay cusboonaysiisaa booska hoos u dhaca curiyaha
$().dropdown('dispose')
Wuxuu baabi'iyaa hoos u dhaca curiyaha.
Dhacdooyinka
Dhammaan dhacdooyinka hoos u dhaca waxaa lagu eryaa xubinta .dropdown-menuwaalidka waxayna leeyihiin relatedTargethanti, qiimihiisu waa curiyaha barroosinka roganaya. hide.bs.dropdowniyo hidden.bs.dropdowndhacdooyinku waxay leeyihiin clickEventhanti (kaliya marka nooca dhacdada asalka ah uu yahay click) oo ka kooban shayga Dhacdada ee dhacdada gujinta.
Dhacdo
Sharaxaada
show.bs.dropdown
Dhacdadani waxay isla markiiba gubtaa marka habka tusaalaha bandhigga la yiraahdo.
shown.bs.dropdown
Dhacdadan ayaa la eryaa marka hoos u dhigista laga dhigo mid la arki karo isticmaaluhu (waxay sugi doontaa kala-guurka CSS, si loo dhamaystiro).
hide.bs.dropdown
Dhacdadan ayaa isla markiiba la eryaa marka habka dhuumashada la waco.
hidden.bs.dropdown
Dhacdadan waxa la eryaa marka ay dhammaato hoos u dhigista laga qarinayo isticmaalaha (waxa ay sugi doontaa kala-guurka CSS, si loo dhamaystiro).