Eszköztippek
Dokumentáció és példák egyéni Bootstrap eszköztippek hozzáadásához CSS-sel és JavaScripttel a CSS3 használatával animációkhoz és adatattribútumokhoz a helyi címtároláshoz.
Áttekintés
Tudnivalók az eszköztipp-bővítmény használatakor:
- Az eszköztippek a harmadik fél Popper.js könyvtárára támaszkodnak a pozicionáláshoz. Ahhoz, hogy az eszköztippek működjenek, a popper.min.js fájlt a bootstrap.js elé kell beírnia , vagy a
bootstrap.bundle.min.js
/bootstrap.bundle.js
parancsot, amely tartalmazza a Popper.js fájlt! - Ha a JavaScriptet forrásból készíti, akkor ehhez
util.js
. - Az eszköztippeket teljesítmény okokból engedélyezik, ezért Önnek kell inicializálnia őket .
- A nulla hosszúságú címekkel rendelkező eszköztippek soha nem jelennek meg.
- Adja meg
container: 'body'
, hogy elkerülje a megjelenítési problémákat az összetettebb összetevőkben (például beviteli csoportjaink, gombcsoportjaink stb.). - Az eszköztippek aktiválása a rejtett elemeken nem fog működni.
.disabled
Az elemekhez vagy elemekhez tartozó eszköztippeket adisabled
burkolóelemen kell aktiválni.- Ha több sort átívelő hiperhivatkozások váltják ki, az eszköztippek középre kerülnek. Használja
white-space: nowrap;
a<a>
s-én, hogy elkerülje ezt a viselkedést. - Az eszköztippeket el kell rejteni, mielőtt a megfelelő elemeiket eltávolítanák a DOM-ból.
- Az eszköztippek az árnyék-DOM-on belüli elemnek köszönhetően aktiválhatók.
Ennek az összetevőnek az animációs hatása a médialekérdezéstől függ prefers-reduced-motion
. Tekintse meg akadálymentesítési dokumentációnk csökkentett mozgással foglalkozó részét .
Megvan az egész? Remek, lássuk, hogyan működnek néhány példával.
Példa: Eszköztippek engedélyezése mindenhol
data-toggle
Az oldalon lévő összes eszköztipp inicializálásának egyik módja az lenne, ha attribútumuk alapján választaná ki őket :
Példák
Az eszköztippek megtekintéséhez vigye az egérmutatót az alábbi linkekre:
Szűk nadrág következő szintű keffiyeh valószínűleg még nem hallott róluk. Photo Booth szakáll nyers farmer magasnyomású vegán futártáska stumptown. A gazdaságtól az asztalig terjedő seitán, az mcsweeney fixie, fenntartható quinoa 8 bites amerikai ruházata frottír richardson vinyl chambray -vel rendelkezik . Beard stumptown, kardigánok banh mi lomo thundercats. Tofu biodízel williamsburg marfa, négy loko mcsweeney's cleanse vegán chambray. Egy igazán ironikus kézműves , akármilyen keytar , scenester farm-to-table banksy Austin twitter fogantyú freegan cred nyers farmer egyetlen eredetű kávévírus.
Vigye az egérmutatót az alábbi gombok fölé, hogy megtekinthesse a négy eszköztipp-irányt: felül, jobb, lent és bal.
És egyéni HTML hozzáadásával:
Használat
Az eszköztipp-bővítmény igény szerint létrehozza a tartalmat és a jelöléseket, és alapértelmezés szerint az eszköztippeket a triggerelem után helyezi el.
Az elemleírás aktiválása JavaScripten keresztül:
Túlcsordulás auto
ésscroll
Az eszköztipp pozíciója megkísérli automatikusan módosítani, ha egy szülőtároló rendelkezik a mi tárolónkkal, overflow: auto
vagy overflow: scroll
tetszik .table-responsive
, de továbbra is megtartja az eredeti elhelyezés pozícióját. A megoldáshoz állítsa a boundary
beállítást az alapértelmezett értéktől eltérő értékre, 'scrollParent'
például 'window'
:
Jelölés
Az eszköztipphez szükséges jelölés csak egy data
attribútum, és title
azon a HTML-elemen, amelyen elemleírást szeretne kapni. Az eszköztippek generált jelölése meglehetősen egyszerű, bár megköveteli a pozíciót (alapértelmezés top
szerint a bővítmény állítja be).
Az eszköztippek működőképessé tétele a billentyűzet és a kisegítő technológiák felhasználói számára
Csak olyan HTML-elemekhez adjon eszköztippeket, amelyek hagyományosan billentyűzetre fókuszálhatók és interaktívak (például hivatkozások vagy űrlapvezérlők). Bár tetszőleges HTML-elemek (például <span>
s) fókuszálhatóvá tehetők az tabindex="0"
attribútum hozzáadásával, ez potenciálisan bosszantó és zavaró tabulátorokat ad a nem interaktív elemekhez a billentyűzetet használók számára. Ezenkívül a legtöbb kisegítő technológia jelenleg nem jeleníti meg az eszközleírást ebben a helyzetben.
Ezenkívül ne hagyatkozzon kizárólag hover
az elemleírás indítójára, mivel ez lehetetlenné teszi az elemleírások aktiválását a billentyűzetet használók számára.
Letiltott elemek
Az disabled
attribútummal rendelkező elemek nem interaktívak, ami azt jelenti, hogy a felhasználók nem fókuszálhatnak rájuk, nem vihetik az egérmutatót rájuk, vagy nem kattinthatnak rájuk, hogy elemleírást (vagy előugró ablakot) indítsanak el. Megkerülő megoldásként az eszköztippet egy burkolóból <div>
vagy <span>
ideális esetben a billentyűzetre fókuszálhatóvá kell tennie tabindex="0"
, és felülírhatja pointer-events
a letiltott elemet.
Lehetőségek
Az opciók átadhatók adatattribútumokon vagy JavaScripten keresztül. Az adatattribútumokhoz fűzze hozzá az opció nevét a data-
következőhöz: data-animation=""
.
Név | típus | Alapértelmezett | Leírás |
---|---|---|---|
élénkség | logikai érték | igaz | Alkalmazzon CSS áttűnést az eszköztippre |
tartály | húr | elem | hamis | hamis | Hozzáfűzi az elemleírást egy adott elemhez. Példa: |
késleltetés | szám | tárgy | 0 | Az eszköztipp megjelenítésének és elrejtésének késleltetése (ms) – nem vonatkozik kézi indítótípusra Ha megad egy számot, akkor a késleltetés mindkét elrejtésre/megjelenítésre vonatkozik Az objektum szerkezete a következő: |
html | logikai érték | hamis | HTML engedélyezése az elemleírásban. Ha igaz, akkor az elemleírásban található HTML-címkék Használjon szöveget, ha aggódik az XSS-támadások miatt. |
elhelyezés | húr | funkció | 'felül' | Az eszköztipp elhelyezése - auto | top | alsó | balra | jobb. Amikor egy függvényt használunk az elhelyezés meghatározására, akkor az eszköztipp DOM-csomópontja az első argumentum, és a kiváltó elem DOM-csomópontja a második. A |
választó | húr | hamis | hamis | Ha rendelkezésre áll választó, akkor az eszköztipp objektumok delegálásra kerülnek a megadott célokra. A gyakorlatban ezt az eszköztippek alkalmazására használják a dinamikusan hozzáadott DOM-elemekre ( jQuery.on támogatás). Lásd ezt és egy tájékoztató példát . |
sablon | húr | '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>' |
Az elemleírás létrehozásakor használandó alap HTML. Az eszköztippeket a
A legkülső burkolóelem |
cím | húr | elem | funkció | '' | Az alapértelmezett címérték, ha Ha adott egy függvény, akkor a program úgy hívja meg, hogy a |
ravaszt | húr | "lebegő fókusz" | Az eszköztipp aktiválása – kattintson a | lebeg | fókusz | kézikönyv. Több triggert is átadhat; szóközzel válassza el őket.
|
beszámítás | szám | húr | 0 | Az eszköztipp eltolása a célhoz képest. További információkért tekintse meg a Popper.js offset dokumentumait . |
backbackPlacement | húr | sor | 'flip' | Hagyja megadni, hogy a Popper melyik pozíciót használja a tartaléknál. További információkért tekintse meg a Popper.js viselkedési dokumentumait |
határ | húr | elem | 'scrollParent' | Az eszköztipp túlcsordulási kényszerhatára. Elfogadja a 'viewport' , 'window' , 'scrollParent' , vagy a HTMLElement hivatkozás értékeit (csak JavaScript). További információkért tekintse meg a Popper.js preventOverflow dokumentumait . |
Adatattribútumok az egyes elemleírásokhoz
Az egyes eszköztippek beállításai adatattribútumok használatával is megadhatók, a fentebb leírtak szerint.
Mód
Aszinkron módszerek és átmenetek
Minden API metódus aszinkron , és átmenetet indít . Visszatérnek a hívóhoz, amint az átmenet elkezdődik, de még azelőtt, hogy az véget érne . Ezenkívül a rendszer figyelmen kívül hagyja az átmeneti komponens metódushívásait .
További információért tekintse meg JavaScript dokumentációnkat .
$().tooltip(options)
Eszköztipp-kezelőt csatol egy elemgyűjteményhez.
.tooltip('show')
Megjeleníti egy elem elemleírását. Visszatér a hívóhoz, mielőtt az eszköztipp ténylegesen megjelenne (azaz az shown.bs.tooltip
esemény bekövetkezte előtt). Ez az eszköztipp „kézi” aktiválásának tekinthető. A nulla hosszúságú címekkel rendelkező eszköztippek soha nem jelennek meg.
.tooltip('hide')
Elrejti az elem elemleírását. Visszatér a hívóhoz, mielőtt az eszköztipp ténylegesen el lett volna rejtve (azaz az hidden.bs.tooltip
esemény bekövetkezte előtt). Ez az eszköztipp „kézi” aktiválásának tekinthető.
.tooltip('toggle')
Bekapcsolja az elem elemleírását. Visszatér a hívóhoz, mielőtt az eszköztipp ténylegesen megjelent vagy elrejtett volna (azaz a shown.bs.tooltip
vagy hidden.bs.tooltip
esemény bekövetkezte előtt). Ez az eszköztipp „kézi” aktiválásának tekinthető.
.tooltip('dispose')
Elrejti és megsemmisíti egy elem elemleírását. A delegálást használó eszköztippek (amelyek a selector
beállítással jönnek létre ) nem semmisíthetők meg egyenként a leszármazott triggerelemeken.
.tooltip('enable')
Lehetőséget ad egy elem elemleírásának megjelenítésére. Az eszköztippek alapértelmezés szerint engedélyezve vannak.
.tooltip('disable')
Eltávolítja az elem elemleírásának megjelenítési lehetőségét. Az eszköztipp csak akkor jelenik meg, ha újra engedélyezve van.
.tooltip('toggleEnabled')
Bekapcsolja az elem elemleírásának megjelenítését vagy elrejtését.
.tooltip('update')
Frissíti egy elem elemleírásának pozícióját.
Események
Esemény típus | Leírás |
---|---|
show.bs.tooltip | Ez az esemény azonnal aktiválódik a show példánymetódus meghívásakor. |
látható.bs.eszközleírás | Ez az esemény akkor aktiválódik, amikor az eszköztipp láthatóvá vált a felhasználó számára (megvárja, amíg a CSS-átmenetek befejeződnek). |
elrejteni.bs.eszköztipp | Ez az esemény azonnal elindul, amikor a hide példánymetódus meghívásra került. |
rejtett.bs.eszközleírás | Ez az esemény akkor aktiválódik, amikor az eszköztipp el lett rejtve a felhasználó elől (megvárja a CSS-átmenetek befejezését). |
beszúrva.bs.eszközleírás | Ez az esemény az show.bs.tooltip esemény után indul el, amikor az eszköztipp-sablont hozzáadták a DOM-hoz. |