Tooltips
Dokumentazzjoni u eżempji għaż-żieda ta 'tooltips Bootstrap personalizzati b'CSS u JavaScript bl-użu ta' CSS3 għal animazzjonijiet u attributi tad-dejta għall-ħażna tat-titlu lokali.
Ħarsa ġenerali
Affarijiet li għandek tkun taf meta tuża l-plugin tooltip:
- Tooltips jiddependu fuq il-librerija tal-parti 3 Popper għall-ippożizzjonar. Trid tinkludi popper.min.js qabel bootstrap.js jew tuża
bootstrap.bundle.min.js
/bootstrap.bundle.js
li fih Popper sabiex it-tooltips jaħdmu! - Jekk qed tibni JavaScript tagħna mis-sors, teħtieġ
util.js
. - Tooltips huma opt-in għal raġunijiet ta' prestazzjoni, għalhekk trid tinizjalizzahom lilek innifsek .
- Tooltips b'titli ta' tul żero qatt ma jintwerew.
- Speċifika
container: 'body'
biex tevita problemi ta' rendering f'komponenti aktar kumplessi (bħal gruppi ta' input tagħna, gruppi ta' buttuni, eċċ). - It-tqajjem tooltips fuq elementi moħbija mhux se jaħdem.
- Tooltips għal
.disabled
jewdisabled
elementi għandhom jiġu attivati fuq element tat-tgeżwir. - Meta jiġu attivati minn hyperlinks li jkopru linji multipli, it-tooltips se jkunu ċċentrati. Uża
white-space: nowrap;
fuq tiegħek<a>
biex tevita din l-imġieba. - Tooltips għandhom ikunu moħbija qabel ma l-elementi korrispondenti tagħhom ikunu tneħħew mid-DOM.
- Tooltips jistgħu jiġu attivati grazzi għal element ġewwa dell DOM.
prefers-reduced-motion
-mistoqsija tal-midja. Ara t-
taqsima tal-mozzjoni mnaqqsa tad-dokumentazzjoni tagħna dwar l-aċċessibbiltà .
Ghandek dak kollu? Kbir, ejja naraw kif jaħdmu ma 'xi eżempji.
Eżempju: Ippermetti tooltips kullimkien
Mod wieħed biex jiġu inizjalizzati l-għodda kollha fuq paġna jkun li tagħżelhom skont l- data-toggle
attribut tagħhom:
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
Eżempji
Passa fuq il-links hawn taħt biex tara l-għodda:
Test ta' placeholder biex juri xi links inline ma' tooltips. Dan issa huwa biss mili, l-ebda qattiel. Kontenut imqiegħed hawn biss biex jimita l-preżenza ta 'test reali . U dan kollu biex jagħtik idea ta' kif jidhru l-għodda tal-għodda meta jintużaw f'sitwazzjonijiet tad-dinja reali. Allura nisperaw li issa rajt kif dawn it-tooltips fuq links jistgħu jaħdmu fil-prattika, ladarba tużahom fuq is- sit jew il-proġett tiegħek stess .
Passa fuq il-buttuni ta' hawn taħt biex tara l-erba' direzzjonijiet tal-għodda: ta' fuq, tal-lemin, ta' isfel u tax-xellug.
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">
Tooltip on top
</button>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
Tooltip on right
</button>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="bottom" title="Tooltip on bottom">
Tooltip on bottom
</button>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip on left">
Tooltip on left
</button>
U b'HTML personalizzat miżjud:
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-html="true" title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">
Tooltip with HTML
</button>
Użu
Il-plugin tooltip jiġġenera kontenut u markup fuq talba, u awtomatikament iqiegħed tooltips wara l-element grillu tagħhom.
Agħmel it-tooltip permezz ta' JavaScript:
$('#example').tooltip(options)
Overflow auto
uscroll
Il-pożizzjoni tat-tooltip tipprova tinbidel awtomatikament meta kontenitur ġenitur ikollu overflow: auto
jew overflow: scroll
bħal tagħna .table-responsive
, iżda xorta jżomm il-pożizzjonament tat-tqegħid oriġinali. Biex issolvi, issettja l- boundary
għażla għal xi ħaġa oħra għajr il-valur default, 'scrollParent'
, bħal 'window'
:
$('#example').tooltip({ boundary: 'window' })
Markup
Il-markup meħtieġ għal tooltip huwa biss data
attribut u title
fuq l-element HTML tixtieq li jkollok tooltip. Il-markup iġġenerat ta' tooltip huwa pjuttost sempliċi, għalkemm jeħtieġ pożizzjoni (b'mod awtomatiku, issettjat top
mill-plugin).
Li tagħmel it-tooltips jaħdmu għall-utenti tat-tastiera u tat-teknoloġija assistiva
Għandek iżżid biss tooltips ma' elementi HTML li tradizzjonalment huma ffukati fuq it-tastiera u interattivi (bħal links jew kontrolli tal-formoli). Għalkemm elementi HTML arbitrarji (bħal <span>
s) jistgħu jsiru ffukabbli billi żżid l- tabindex="0"
attribut, dan iżid tab stops potenzjalment tedjanti u konfużi fuq elementi mhux interattivi għall-utenti tat-tastiera, u l-biċċa l-kbira tat-teknoloġiji ta 'assistenza bħalissa ma jħabbrux it-tooltip f'din is-sitwazzjoni. Barra minn hekk, tistrieħx biss fuq hover
bħala l-grillu għall-tooltip tiegħek, peress li dan jagħmel it-tooltips tiegħek impossibbli li jiġu attivati għall-utenti tat-tastiera.
<!-- HTML to write -->
<a href="#" data-toggle="tooltip" title="Some tooltip text!">Hover over me</a>
<!-- Generated markup by the plugin -->
<div class="tooltip bs-tooltip-top" role="tooltip">
<div class="arrow"></div>
<div class="tooltip-inner">
Some tooltip text!
</div>
</div>
Elementi b'diżabilità
L-elementi bl- disabled
attribut mhumiex interattivi, jiġifieri l-utenti ma jistgħux jiffokaw, jgħadduhom jew ikklikkjahom biex jagħtu bidu għal tooltip (jew popover). Bħala soluzzjoni, tkun trid tiskatta l-għodda minn tgeżwir <div>
jew <span>
, idealment magħmula li tiffoka fuq it-tastiera bl-użu ta' tabindex="0"
, u tegħleb pointer-events
fuq l-element b'diżabilità.
<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>
Għażliet
L-għażliet jistgħu jiġu mgħoddija permezz ta' attributi tad-dejta jew JavaScript. Għal attributi tad-dejta, ehmeż l-isem tal-għażla ma' data-
, bħal f' data-animation=""
.
sanitize
,
sanitizeFn
u
l- whiteList
għażliet ma jistgħux jiġu forniti bl-użu ta' attributi tad-dejta.
Isem | Tip | Default | Deskrizzjoni |
---|---|---|---|
animazzjoni | boolean | veru | Applika transizzjoni ta' fade CSS għall-tooltip |
kontenitur | spag | element | falza | falza | Jwaħħal it-tooltip ma' element speċifiku. Eżempju: |
dewmien | numru | oġġett | 0 | Dewmien biex juri u jaħbi l-tooltip (ms) - ma japplikax għat-tip ta' grillu manwali Jekk jiġi fornut numru, id-dewmien jiġi applikat kemm għall-ħbi/turi L-istruttura tal-oġġett hija: |
html | boolean | falza | Ħalli HTML fit-tooltip. Jekk veru, it-tikketti HTML fil-tooltip's Uża test jekk int inkwetat dwar attakki XSS. |
tqegħid | spag | funzjoni | 'fuq' | Kif tpoġġi l-tooltip - auto | fuq | qiegħ | xellug | dritt. Meta tintuża funzjoni biex tiddetermina t-tqegħid, tissejjaħ bin-node DOM tal-għodda bħala l-ewwel argument tagħha u n-nodu DOM tal-element triggering bħala t-tieni. Il- |
selettur | spag | falza | falza | Jekk jiġi pprovdut selettur, l-oġġetti tat-tooltip jiġu delegati lill-miri speċifikati. Fil-prattika, dan jintuża biex japplika wkoll tooltips għal elementi DOM miżjuda b'mod dinamiku ( jQuery.on appoġġ). Ara dan u eżempju informattiv . |
mudell | spag | '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>' |
Bażi HTML biex tuża meta toħloq it-tooltip. It-tooltip's
L-element tat-tgeżwir l-aktar 'il barra għandu jkollu l- |
titolu | spag | element | funzjoni | '' | Valur tat-titlu default jekk Jekk tingħata funzjoni, tissejjaħ bir- |
grillu | spag | 'fokus' | Kif tiġi attivata tooltip - ikklikkja | iddur | tiffoka | manwal. Inti tista 'tgħaddi triggers multipli; jifredhom bi spazju.
|
offset | numru | spag | funzjoni | 0 | Offset tal-tooltip relattiv għall-mira tiegħu. Meta tintuża funzjoni biex tiddetermina l-offset, tissejjaħ b'oġġett li jkun fih id-dejta tal-offset bħala l-ewwel argument tagħha. Il-funzjoni trid tirritorna oġġett bl-istess struttura. L-element triggering node DOM huwa mgħoddi bħala t-tieni argument. Għal aktar informazzjoni irreferi għad-dokumenti tal- offset ta’ Popper . |
FallbackPlacement | spag | firxa | 'flip' | Ħalli tispeċifika liema pożizzjoni se juża Popper fuq riżerva. Għal aktar informazzjoni irreferi għad-dokumenti tal- imġieba ta’ Popper |
customClass | spag | funzjoni | '' | Żid klassijiet mal-tooltip meta jintwera. Innota li dawn il-klassijiet se jiġu miżjuda flimkien ma' kwalunkwe klassi speċifikata fil-mudell. Biex iżżid klassijiet multipli, isseparahom bi spazji: Tista 'wkoll tgħaddi funzjoni li għandha tirritorna string waħda li fiha ismijiet ta' klassi addizzjonali. |
fruntiera | spag | element | 'scrollParent' | Limitu ta' restrizzjoni ta' overflow tal-tooltip. Jaċċetta l-valuri ta' 'viewport' , 'window' , 'scrollParent' , jew referenza HTMLElement (JavaScript biss). Għal aktar informazzjoni irreferi għad- doks preventOverflow ta' Popper . |
sanitizza | boolean | veru | Ippermetti jew tiddiżattiva s-sanitizzazzjoni. Jekk jiġi attivat 'template' u l- 'title' għażliet jiġu sanitizzati. Ara s- sezzjoni ta' sanitizer fid-dokumentazzjoni JavaScript tagħna . |
lista bajda | oġġett | Valur default | Oġġett li fih attributi u tags permessi |
sanitizeFn | null | funzjoni | null | Hawnhekk tista 'tforni l-funzjoni ta' sanitizza tiegħek stess. Dan jista 'jkun utli jekk tippreferi tuża librerija ddedikata biex twettaq sanitizzazzjoni. |
popperConfig | null | oġġett | null | Biex tibdel il-konfigurazzjoni default Popper ta' Bootstrap, ara l-konfigurazzjoni ta' Popper |
Attributi tad-dejta għal tooltips individwali
Għażliet għal tooltips individwali jistgħu alternattivament jiġu speċifikati permezz tal-użu tal-attributi tad-dejta, kif spjegat hawn fuq.
Metodi
Metodi asinkroniċi u tranżizzjonijiet
Il-metodi kollha tal-API huma asinkroniċi u jibdew transizzjoni . Jirritornaw għand min iċempel hekk kif tinbeda t-tranżizzjoni iżda qabel ma tispiċċa . Barra minn hekk, sejħa ta' metodu fuq komponent ta' tranżizzjoni se tiġi injorata .
Ara d-dokumentazzjoni JavaScript tagħna għal aktar informazzjoni .
$().tooltip(options)
Jwaħħal tooltip handler ma' kollezzjoni ta' elementi.
.tooltip('show')
Tiżvela tooltip ta' element. Jirritorna lil min iċempel qabel ma jkun intwera l-għodda (jiġifieri qabel ma shown.bs.tooltip
jseħħ l-avveniment). Dan huwa meqjus bħala attivazzjoni "manwali" tal-tooltip. Tooltips b'titli ta' tul żero qatt ma jintwerew.
$('#element').tooltip('show')
.tooltip('hide')
Jaħbi tooltip ta' element. Jirritorna lil min iċempel qabel ma l-għodda tkun ġiet moħbija (jiġifieri qabel ma hidden.bs.tooltip
jseħħ l-avveniment). Dan huwa meqjus bħala attivazzjoni "manwali" tal-tooltip.
$('#element').tooltip('hide')
.tooltip('toggle')
Jiddawwar l-għodda ta' element. Jirritorna lil min iċempel qabel ma l-għodda tkun intweriet jew moħbija (jiġifieri qabel ma jseħħ l-avveniment shown.bs.tooltip
jew ). hidden.bs.tooltip
Dan huwa meqjus bħala attivazzjoni "manwali" tal-tooltip.
$('#element').tooltip('toggle')
.tooltip('dispose')
Jaħbi u jeqred it-tooltip ta' element. Tooltips li jużaw id-delega (li huma maħluqa bl -użu tal - selector
għażla ) ma jistgħux jinqerdu individwalment fuq elementi ta 'grillu dixxendenti.
$('#element').tooltip('dispose')
.tooltip('enable')
Jagħti l-abbiltà li jintwera tooltip ta' element. Tooltips huma attivati awtomatikament.
$('#element').tooltip('enable')
.tooltip('disable')
Tneħħi l-abbiltà li l-tooltip ta' element jintwera. It-tooltip tkun tista' tintwera biss jekk terġa' tiġi attivata.
$('#element').tooltip('disable')
.tooltip('toggleEnabled')
Jiddawwar l-abbiltà li l-tooltip ta' element jintwera jew moħbi.
$('#element').tooltip('toggleEnabled')
.tooltip('update')
Taġġorna l-pożizzjoni tat-tooltip ta' element.
$('#element').tooltip('update')
Avvenimenti
Tip ta' Avveniment | Deskrizzjoni |
---|---|
show.bs.tooltip | Dan l-avveniment jispara immedjatament meta show jissejjaħ il-metodu tal-istanza. |
muri.bs.tooltip | Dan l-avveniment jiġi sparat meta l-tooltip tkun saret viżibbli għall-utent (se jistenna li t-tranżizzjonijiet CSS jitlestew). |
hide.bs.tooltip | Dan l-avveniment jiġi sparat immedjatament meta l- hide metodu tal-istanza jkun ġie msejjaħ. |
hidden.bs.tooltip | Dan l-avveniment jiġi sparat meta l-tooltip spiċċa moħbi mill-utent (se jistenna li jitlestew it-tranżizzjonijiet CSS). |
inserit.bs.tooltip | Dan l-avveniment jiġi sparat wara l- show.bs.tooltip avveniment meta l-mudell tat-tooltip ikun ġie miżjud mad-DOM. |
$('#myTooltip').on('hidden.bs.tooltip', function () {
// do something...
})