Værktøjstip
Dokumentation og eksempler på tilføjelse af brugerdefinerede Bootstrap-værktøjstip med CSS og JavaScript ved hjælp af CSS3 til animationer og dataattributter til lokal titellagring.
Ting at vide, når du bruger værktøjstip-plugin:
- Værktøjstip er afhængige af tredjepartsbiblioteket Popper.js til positionering. Du skal inkludere popper.min.js før bootstrap.js eller bruge
bootstrap.bundle.min.js
/bootstrap.bundle.js
som indeholder Popper.js for at værktøjstip skal virke! - Hvis du bygger vores JavaScript fra kilden, kræver
util.js
det . - Værktøjstip er opt-in af ydeevnemæssige årsager, så du skal selv initialisere dem .
- Værktøjstip med titler på nul længde vises aldrig.
- Angiv
container: 'body'
for at undgå gengivelse af problemer i mere komplekse komponenter (såsom vores inputgrupper, knapgrupper osv.). - At udløse værktøjstip på skjulte elementer vil ikke fungere.
- Værktøjstip til
.disabled
ellerdisabled
elementer skal udløses på et indpakningselement. - Når de udløses fra hyperlinks, der spænder over flere linjer, vil værktøjstip blive centreret. Brug
white-space: nowrap;
på dine<a>
s for at undgå denne adfærd. - Værktøjstip skal skjules, før deres tilsvarende elementer er blevet fjernet fra DOM.
Har du alt det? Godt, lad os se, hvordan de fungerer med nogle eksempler.
En måde at initialisere alle værktøjstip på en side på ville være at vælge dem efter deres data-toggle
egenskab:
Hold markøren over nedenstående links for at se værktøjstip:
Stramme bukser næste niveau keffiyeh du har sikkert ikke hørt om dem. Photo booth skæg rå denim bogtryk vegansk messenger bag stumptown. Farm-to-table seitan, mcsweeney's fixie bæredygtige quinoa 8-bit amerikansk beklædning har en frotté richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, fire loko mcsweeney's cleanse veganske chambray. En virkelig ironisk håndværker uanset keytar , scenester farm-to-table banksy Austin twitter handle freegan cred raw denim single-origin kaffe viral.
Hold markøren over knapperne nedenfor for at se de fire værktøjstip-retninger: top, højre, bund og venstre.
Og med tilpasset HTML tilføjet:
Værktøjstip-pluginnet genererer indhold og opmærkning efter behov og placerer som standard værktøjstip efter deres udløserelement.
Udløs værktøjstippet via JavaScript:
Den nødvendige markering for et værktøjstip er kun en data
attribut, og title
på HTML-elementet ønsker du at have et værktøjstip. Den genererede markering af et værktøjstip er ret enkel, selvom den kræver en position (som standard indstillet til top
af plugin).
Få værktøjstip til at fungere for brugere af tastatur og hjælpemidler
Du bør kun tilføje værktøjstip til HTML-elementer, der traditionelt er tastaturfokuserbare og interaktive (såsom links eller formularkontrolelementer). Selvom vilkårlige HTML-elementer (såsom <span>
s) kan gøres fokusbare ved at tilføje tabindex="0"
attributten, vil dette tilføje potentielt irriterende og forvirrende tabulatorstop på ikke-interaktive elementer for tastaturbrugere. Derudover annoncerer de fleste hjælpeteknologier i øjeblikket ikke værktøjstip i denne situation.
Derudover skal du ikke stole udelukkende på hover
som udløser for dit værktøjstip, da dette vil gøre dine værktøjstip umulige at udløse for tastaturbrugere.
Elementer med disabled
attributten er ikke interaktive, hvilket betyder, at brugere ikke kan fokusere, svæve eller klikke på dem for at udløse et værktøjstip (eller popover). Som en løsning vil du gerne udløse værktøjstip fra en wrapper <div>
eller <span>
, ideelt gjort tastaturfokuserbar ved hjælp af tabindex="0"
, og tilsidesætte pointer-events
på det deaktiverede element.
<span class="d-inline-block" tabindex="0" data-toggle="tooltip" title="Disabled tooltip">
<button class="btn btn-primary" style="pointer-events: none;" type="button" disabled>Disabled button</button>
</span>
Indstillinger kan videregives via dataattributter eller JavaScript. For dataattributter skal du tilføje indstillingsnavnet til data-
, som i data-animation=""
.
Navn | Type | Standard | Beskrivelse |
---|---|---|---|
animation | boolesk | rigtigt | Anvend en CSS-fade-overgang til værktøjstip |
beholder | streng | element | falsk | falsk | Føjer værktøjstip til et bestemt element. Eksempel: |
forsinke | nummer | objekt | 0 | Forsinket visning og skjulning af værktøjstip (ms) - gælder ikke for manuel triggertype Hvis et nummer er angivet, anvendes forsinkelse på både skjul/show Objektstrukturen er: |
html | boolesk | falsk | Tillad HTML i værktøjstippet. Hvis det er sandt, vil HTML-tags i værktøjstippet Brug tekst, hvis du er bekymret for XSS-angreb. |
placering | streng | fungere | 'top' | Sådan placeres værktøjstip - auto | top | nederst | venstre | ret. Når en funktion bruges til at bestemme placeringen, kaldes den med værktøjstip DOM-knudepunktet som dets første argument og det udløsende element DOM-noden som dets andet. Konteksten |
vælger | streng | falsk | falsk | Hvis der er angivet en vælger, vil værktøjstip-objekter blive uddelegeret til de angivne mål. I praksis bruges dette til at gøre det muligt for dynamisk HTML-indhold at tilføje popovers. Se dette og et informativt eksempel . |
skabelon | snor | '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>' |
Base HTML til brug ved oprettelse af værktøjstip. Værktøjstip
Det yderste indpakningselement skal have |
titel | streng | element | fungere | '' | Standard titelværdi, hvis Hvis en funktion er givet, vil den blive kaldt med dens |
udløser | snor | 'hover fokus' | Hvordan værktøjstip udløses - klik | svæv | fokus | brugervejledning. Du kan passere flere triggere; adskille dem med et mellemrum.
|
offset | nummer | snor | 0 | Forskydning af værktøjstip i forhold til dets mål. For mere information henvises til Popper.js's offset-dokumenter . |
fallbackPlacering | streng | array | 'flip' | Tillad at angive, hvilken position Popper vil bruge ved fallback. For mere information henvises til Popper.js' adfærdsdokumenter |
grænse | streng | element | 'scrollParent' | Overløbsbegrænsningsgrænse for værktøjstip. Accepterer værdierne for 'viewport' , 'window' , 'scrollParent' eller en HTMLElement-reference (kun JavaScript). For mere information henvises til Popper.js's preventOverflow-dokumenter . |
Dataattributter for individuelle værktøjstip
Valgmuligheder for individuelle værktøjstip kan alternativt specificeres ved brug af dataattributter, som forklaret ovenfor.
Asynkrone metoder og overgange
Alle API - metoder er asynkrone og starter en overgang . De vender tilbage til den, der ringer, så snart overgangen er startet, men før den slutter . Derudover vil et metodekald på en overgangskomponent blive ignoreret .
Vedhæfter en værktøjstip-handler til en elementsamling.
Viser et elements værktøjstip. Vender tilbage til den, der ringer, før værktøjstip faktisk er blevet vist (dvs. før shown.bs.tooltip
hændelsen indtræffer). Dette betragtes som en "manuel" udløsning af værktøjstip. Værktøjstip med titler på nul længde vises aldrig.
Skjuler et elements værktøjstip. Vender tilbage til den, der ringer, før værktøjstip rent faktisk er blevet skjult (dvs. før hidden.bs.tooltip
hændelsen indtræffer). Dette betragtes som en "manuel" udløsning af værktøjstip.
Skifter et elements værktøjstip. Vender tilbage til den, der ringer, før værktøjstip faktisk er blevet vist eller skjult (dvs. før hændelsen shown.bs.tooltip
eller hidden.bs.tooltip
indtræffer). Dette betragtes som en "manuel" udløsning af værktøjstip.
Skjuler og ødelægger et elements værktøjstip. Værktøjstip, der bruger delegering (som oprettes ved hjælp af selector
muligheden ), kan ikke individuelt destrueres på efterkommer-triggerelementer.
Giver et elements værktøjstip mulighed for at blive vist. Værktøjstip er aktiveret som standard.
Fjerner muligheden for, at et elements værktøjstip vises. Værktøjstippet vil kun kunne vises, hvis det er genaktiveret.
Skifter muligheden for, at et elements værktøjstip vises eller skjules.
Opdaterer placeringen af et elements værktøjstip.
Begivenhedstype | Beskrivelse |
---|---|
vis.bs.værktøjstip | Denne hændelse udløses med det samme, når show instansmetoden kaldes. |
vist.bs.værktøjstip | Denne hændelse udløses, når værktøjstippet er gjort synligt for brugeren (vil vente på, at CSS-overgange er fuldført). |
skjule.bs.værktøjstip | Denne hændelse udløses straks, når hide instansmetoden er blevet kaldt. |
skjult.bs.værktøjstip | Denne hændelse udløses, når værktøjstip er færdig med at blive skjult for brugeren (vil vente på, at CSS-overgange er fuldført). |
indsat.bs.værktøjstip | Denne hændelse udløses efter show.bs.tooltip hændelsen, når værktøjstip-skabelonen er blevet tilføjet til DOM. |