Toggle kontextuell Iwwerlagerungen fir Lëschte vu Linken ze weisen a méi mam Bootstrap Dropdown Plugin.
Iwwersiicht
Dropdowns sinn togglebar, kontextuell Iwwerlagerungen fir Lëschte vu Linken ze weisen a méi. Si ginn interaktiv gemaach mam abegraff Bootstrap Dropdown JavaScript Plugin. Si ginn duerch Klick gekippt, net duerch Schweef; dëst ass eng virsiichteg Designdecisioun .
Dropdowns sinn op eng drëtt Partei Bibliothéik gebaut, Popper.js , déi dynamesch Positionéierung an viewport Detektioun gëtt. Gitt sécher datt Dir Popper.min.js virum Bootstrap's JavaScript enthält oder benotzt bootstrap.bundle.min.js/ bootstrap.bundle.jsdéi Popper.js enthält. Popper.js gëtt net benotzt fir Dropdowns an Navbars ze positionéieren, awer well dynamesch Positionéierung net erfuerderlech ass.
Wann Dir eis JavaScript aus der Quell baut, brauchutil.js et .
Accessibilitéit
De WAI ARIA Standard definéiert en aktuellen role="menu"Widget , awer dëst ass spezifesch fir Applikatiounsähnlech Menüen déi Aktiounen oder Funktiounen ausléisen. ARIA Menue kënnen nëmmen Menü Elementer enthalen, Checkbox Menü Elementer, Radio Button Menü Elementer, Radio Button Gruppen, an Ënnermenüen.
Dem Bootstrap seng Dropdowns, op der anerer Säit, sinn entwéckelt fir generesch ze sinn an applicabel op eng Vielfalt vu Situatiounen a Markupstrukturen. Zum Beispill ass et méiglech Dropdowns ze kreéieren déi zousätzlech Inputen a Formkontrolle enthalen, sou wéi Sichfelder oder Loginformen. Aus dësem Grond erwaart Bootstrap keng vun den rolean aria-Attributer déi fir richteg ARIA Menüen erfuerderlech sinn (och net automatesch derbäi). Autoren mussen dës méi spezifesch Attributer selwer enthalen.
Wéi och ëmmer, Bootstrap füügt gebaut-an Ënnerstëtzung fir déi meescht Standard Tastaturmenü Interaktiounen, sou wéi d'Fäegkeet fir duerch eenzel .dropdown-itemElementer mat de Cursorschlësselen ze bewegen an de Menü mat dem ESCSchlëssel zouzemaachen.
Beispiller
Wickelt den Dropdown-Taggle (Äre Knäppchen oder Link) an den Dropdown-Menü bannent .dropdown, oder en anert Element dat deklaréiert position: relative;. Dropdowns kënnen aus <a>oder <button>Elementer ausgeléist ginn fir Är potenziell Bedierfnesser besser ze passen.
Single Knäppchen
All Single .btnkann an e Dropdown Toggle ëmgewandelt ginn mat e puer Markup Ännerungen. Hei ass wéi Dir se mat entweder <button>Elementer setzen kënnt:
Ähnlech erstellt Splitknäppchen Dropdowns mat quasi déiselwecht Markup wéi Single Button Dropdowns, awer mat der Zousatz vu .dropdown-toggle-splitfir richteg Abstand ronderëm den Dropdown Caret.
Mir benotzen dës extra Klass fir d'horizontal paddingop béide Säiten vun der caret ze reduzéieren mat 25% an ewechzehuelen déi margin-leftfir regelméisseg Knäppchen dropdowns dobäi ass. Déi extra Ännerunge behalen de Caret am Spaltknäppchen zentréiert a liwweren e méi passend Gréissten Hitgebitt nieft dem Haaptknäppchen.
Historesch huet d'Dropdown-Menü Inhalter misse Linken sinn, awer dat ass net méi de Fall mat v4. Elo kënnt Dir optional <button>Elementer an Ären Dropdowns benotzen anstatt just <a>s.
Dir kënnt och net-interaktiven Dropdown-Elementer mat .dropdown-item-text. Fillt Iech gratis weider ze styléieren mat personaliséierten CSS oder Text Utilities.
Par défaut gëtt en Dropdown-Menü automatesch 100% vun uewen a laanscht déi lénks Säit vu sengem Elterendeel positionéiert. Füügt .dropdown-menu-rightop eng .dropdown-menuriets ausgeriicht den Dropdown-Menü.
Kapp erop! Dropdowns sinn positionéiert dank Popper.js (ausser wann se an enger navbar enthale sinn).
Reaktiounsfäeger Ausriichtung
Wann Dir reaktiounsfäeger Ausriichtung benotze wëllt, deaktivéiert dynamesch Positionéierung andeems Dir den data-display="static"Attribut bäidréit a benotzt déi reaktiounsfäeg Variatiounsklassen.
Fir den Dropdown-Menü richteg auszegläichen mat dem gegebene Breakpunkt oder méi grouss, füügt .dropdown-menu{-sm|-md|-lg|-xl}-right.
Fir den Dropdown-Menü lénks mat dem gegebene Breakpunkt oder méi grouss auszegläichen, füügt .dropdown-menu-righta .dropdown-menu{-sm|-md|-lg|-xl}-left.
Bedenkt datt Dir keen data-display="static"Attribut fir Dropdown-Knäppercher an Navbars addéiere musst, well Popper.js net an Navbars benotzt gëtt.
Menu Inhalt
Header
Füügt en Header fir Sektiounen vun Aktiounen an all Dropdown-Menü ze markéieren.
Plaz all freeform Text an engem Dropdown-Menü mat Text a benotzt Abstands-Utilities . Bedenkt datt Dir wahrscheinlech zousätzlech Gréisststiler braucht fir d'Menübreet ze beschränken.
E puer Beispill Text dee fräi fléissend am Dropdown-Menü ass.
An dëst ass méi Beispill Text.
Formen
Setzt e Formulaire an engem Dropdown-Menü, oder maacht et an en Dropdown-Menü, a benotzt Margin- oder Padding-Utilities fir et den negativen Raum ze ginn deen Dir braucht.
Iwwer Dateattributer oder JavaScript wiesselt den Dropdown-Plugin verstoppt Inhalt (Dropdown-Menüen) andeems Dir d' .showKlass op den Elterelëscht Element wiesselt. D' data-toggle="dropdown"Attributer gëtt ugewisen fir Dropdown-Menüen op engem Applikatiounsniveau zouzemaachen, also ass et eng gutt Iddi et ëmmer ze benotzen.
Op Touch-aktivéierten Apparater, d'Ouverture vun engem Dropdown füügt eidel ( $.noop) mouseoverHandler un déi direkt Kanner vum <body>Element. Dësen zouginn ellen Hack ass néideg fir ronderëm e Quirk an der iOS Event Delegatioun ze schaffen , wat soss verhënnert datt e Krunn iergendwou ausserhalb vum Dropdown de Code ausléist deen den Dropdown zoumaacht. Wann den Dropdown zougemaach ass, ginn dës zousätzlech eidel mouseoverHandler geläscht.
Via daten Attributer
Füügt data-toggle="dropdown"e Link oder Knäppchen fir en Dropdown ze wiesselen.
Iwwer JavaScript
Rufft d'Dropdowns iwwer JavaScript un:
data-toggle="dropdown"nach néideg
Egal ob Dir Ären Dropdown iwwer JavaScript nennt oder amplaz den Data-APi benotzt, data-toggle="dropdown"ass ëmmer erfuerderlech um Ausléiserelement vum Dropdown präsent ze sinn.
Optiounen
Optiounen kënnen iwwer Datenattributer oder JavaScript weidergeleet ginn. Fir Datenattributer, fügen d'Optiounsnumm un data-, wéi an data-offset="".
Numm
Typ
Default
Beschreiwung
offset
Zuel | streng | Funktioun
0
Offset vum Dropdown relativ zu sengem Zil. Fir méi Informatiounen, kuckt op Popper.js's Offset Docs .
flipp
boolesch
wouer
Erlaabt den Dropdown ze flippen am Fall vun enger Iwwerlappung um Referenzelement. Fir méi Informatioun kuckt op de Popper.js Flip Docs .
Grenz
streng | element
'scrollParent'
Iwwerschwemmungsgrenze vum Dropdown-Menü. Akzeptéiert d'Wäerter vun 'viewport', 'window', 'scrollParent'oder eng HTMLElement Referenz (nëmmen JavaScript). Fir méi Informatioun kuckt op Popper.js's preventOverflow Docs .
Referenz
streng | element
'schalten'
Referenzelement vum Dropdown-Menü. Akzeptéiert d'Wäerter vun 'toggle', 'parent', oder eng HTMLElement Referenz. Fir méi Informatioun kuckt op Popper.js's referenceObject docs .
affichéieren
String
'dynamesch'
Par défaut benotze mir Popper.js fir dynamesch Positionéierung. Desaktivéiere dëst mat static.
Notéiert wann boundaryop all Wäert anescht wéi gesat 'scrollParent'gëtt, gëtt de Stil position: staticop de .dropdownContainer applizéiert.
Methoden
Method
Beschreiwung
$().dropdown('toggle')
Wiesselt den Dropdown-Menü vun enger bestëmmter Navbar oder Tabbed Navigatioun.
$().dropdown('show')
Weist den Dropdown-Menü vun enger bestëmmter Navbar oder Tabbed Navigatioun.
$().dropdown('hide')
Verstoppt den Dropdown-Menü vun enger bestëmmter Navbar oder Tabbed Navigatioun.
$().dropdown('update')
Aktualiséiert d'Positioun vun engem Element dropdown.
$().dropdown('dispose')
Zerstéiert den Dropdown vun engem Element.
Evenementer
All Dropdown-Evenementer ginn op d' .dropdown-menuElteren-Element gebrannt an hunn e relatedTargetBesëtz, deem säi Wäert den Toggling-Ankerelement ass. hide.bs.dropdownan hidden.bs.dropdownEvenementer hunn eng clickEventPropriétéit (nëmmen wann d'Original Event Typ ass click) déi enthält en Event Objet fir de Klick Event.
Event
Beschreiwung
show.bs.dropdown
Dëst Event brennt direkt wann d'Show Instanz Method genannt gëtt.
shown.bs.dropdown
Dëst Evenement gëtt ofgeléist wann den Dropdown fir de Benotzer siichtbar gemaach gouf (waart op CSS Iwwergäng, fir ze kompletéieren).
hide.bs.dropdown
Dëst Evenement gëtt direkt ausgeléist wann d'Hide Instanz Method genannt gouf.
hidden.bs.dropdown
Dëst Evenement gëtt ofgeléist wann den Dropdown fäerdeg ass vum Benotzer verstoppt ze ginn (waart op CSS Iwwergäng, fir ze kompletéieren).