Source

Cov lus qhia

Cov ntaub ntawv thiab cov piv txwv rau ntxiv cov kev cai Bootstrap tooltips nrog CSS thiab JavaScript siv CSS3 rau animations thiab cov ntaub ntawv-tus cwj pwm rau cov npe hauv zos.

Txheej txheem cej luam

Tej yam yuav tsum paub thaum siv tooltip plugin:

  • Tooltips cia siab rau 3rd tog tsev qiv ntawv Popper.js rau qhov chaw. Koj yuav tsum suav nrog popper.min.js ua ntej bootstrap.js lossis siv bootstrap.bundle.min.js/ bootstrap.bundle.jsuas muaj Popper.js txhawm rau kom cov lus qhia ua haujlwm!
  • Yog tias koj tab tom tsim peb JavaScript los ntawm qhov chaw, nws xav tauutil.js .
  • Tooltips yog opt-in rau kev ua tau zoo vim li cas, yog li koj yuav tsum pib lawv tus kheej .
  • Cov lus qhia nrog xoom-ntev lub npe yeej tsis tshwm sim.
  • Qhia container: 'body'kom tsis txhob muaj teeb meem nyob rau hauv cov khoom siv ntau dua (xws li peb cov tswv yim pab pawg, pawg khawm, thiab lwm yam).
  • Tig cov lus qhia ntawm cov ntsiab lus zais yuav tsis ua haujlwm.
  • Cov lus qhia rau .disabledlossis disabledcov ntsiab lus yuav tsum tau ua rau ntawm cov khoom siv wrapper.
  • Thaum tshwm sim los ntawm hyperlinks uas hla ntau kab, cov lus qhia yuav yog qhov nruab nrab. Siv white-space: nowrap;koj <a>tus kheej kom tsis txhob muaj tus cwj pwm no.
  • Cov lus qhia yuav tsum tau muab zais ua ntej lawv cov ntsiab lus sib raug tau raug tshem tawm ntawm DOM.
  • Cov lus qhia tuaj yeem tshwm sim ua tsaug rau ib qho hauv ib qho duab ntxoov ntxoo DOM.

Cov nyhuv animation ntawm cov khoom siv no yog nyob ntawm cov prefers-reduced-motionlus nug xov xwm. Saib qhov txo qis ntawm peb cov ntaub ntawv nkag mus tau .

Tau txais tag nrho cov ntawd? Zoo heev, cia saib seb lawv ua haujlwm li cas nrog qee qhov piv txwv.

Piv txwv: Qhib cov lus qhia txog txhua qhov chaw

Ib txoj hauv kev los pib tag nrho cov lus qhia ntawm nplooj ntawv yuav yog xaiv lawv los ntawm lawv data-toggletus cwj pwm:

$(function () {
  $('[data-toggle="tooltip"]').tooltip()
})

Piv txwv

Hover tshaj qhov txuas hauv qab no kom pom cov lus qhia:

Tight ris tom ntej no keffiyeh tej zaum koj yuav tsis tau hnov ​​txog lawv. Diam duab lub rooj muag zaub beard raw denim letterpress vegan tub txib hnab stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-ntsis american apparel muaj terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, plaub loko mcsweeney's cleanse vegan chambray. Ib tus kws txawj ntse tiag tiag txawm li cas los xij keytar , scenester ua liaj ua teb-rau- rooj banksy Austin twitter tuav freegan cred nyoos denim ib leeg-hauv paus kas fes kis.

Hover dhau cov nyees khawm hauv qab no kom pom plaub lub tswv yim qhia: sab saum toj, sab xis, hauv qab, thiab sab laug.

<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>

Thiab nrog kev cai HTML ntxiv:

<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>

Kev siv

Lub tooltip plugin tsim cov ntsiab lus thiab kos npe rau ntawm qhov kev thov, thiab los ntawm lub neej ntawd tso cov lus qhia tom qab lawv lub ntsiab lus.

Tig lub cuab yeej ntawm JavaScript:

$('#example').tooltip(options)
Hlawv autothiabscroll

Tooltip txoj hauj lwm sim hloov pauv thaum lub thawv niam txiv muaj overflow: autolossis overflow: scrollnyiam peb .table-responsive, tab sis tseem khaws cov thawj qhov chaw tso cai. Txhawm rau daws, teeb qhov boundarykev xaiv rau lwm yam uas tsis yog tus nqi pib, 'scrollParent', xws li 'window':

$('#example').tooltip({ boundary: 'window' })

Markup

Qhov yuav tsum tau kos npe rau cov lus qhia tsuas yog tus datacwj pwm thiab titlentawm HTML lub caij koj xav kom muaj cov lus qhia. Lub generated markup ntawm ib tug tooltip yog qhov yooj yim, tab sis nws yuav tsum tau ib txoj hauj lwm (los ntawm lub neej ntawd, teem los topntawm lub plugin).

Ua cov lus qhia ua haujlwm rau cov keyboard thiab cov neeg siv thev naus laus zis

Koj tsuas yog yuav tsum ntxiv cov lus qhia rau HTML cov ntsiab lus uas yog ib txwm siv keyboard-focusable thiab sib tham sib (xws li kev sib txuas lossis daim ntawv tswj). Txawm hais tias cov ntsiab lus HTML arbitrary (xws li <span>s) tuaj yeem ua kom pom tseeb los ntawm kev ntxiv cov tabindex="0"cwj pwm, qhov no yuav ntxiv qhov cuam tshuam thiab tsis meej pem tab ntawm cov ntsiab lus tsis sib tham rau cov neeg siv cov keyboard. Tsis tas li ntawd, feem ntau cov cuab yeej pabcuam tam sim no tsis tshaj tawm cov lus qhia hauv qhov xwm txheej no.

Tsis tas li ntawd, tsis txhob cia siab ib leeg los hoverua qhov ua rau koj cov lus qhia, vim qhov no yuav ua rau koj cov lus qhia tsis tuaj yeem ua rau cov neeg siv cov keyboard.

<!-- 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>

Cov neeg xiam oob qhab

Cov ntsiab lus nrog tus disabledcwj pwm tsis sib cuam tshuam, txhais tau tias cov neeg siv tsis tuaj yeem tsom, txav mus los, lossis nyem rau lawv kom ua rau cov lus qhia (lossis popover). Raws li kev daws teeb meem, koj yuav xav ua kom cov lus qhia los ntawm lub wrapper <div>los yog <span>, qhov zoo tshaj plaws ua cov keyboard-focusable siv tabindex="0", thiab override pointer-eventsntawm lub caij tsis taus.

<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>

Kev xaiv

Cov kev xaiv tuaj yeem dhau los ntawm cov ntaub ntawv tus cwj pwm lossis JavaScript. Rau cov ntaub ntawv tus cwj pwm, ntxiv rau qhov kev xaiv npe rau data-, xws li hauv data-animation="".

Lub npe Hom Default Kev piav qhia
animation boolean muaj tseeb Siv CSS hloov pauv mus rau cov lus qhia
thawv hlua | element | cuav cuav

Appends lub tooltip rau ib lub caij tshwj xeeb. container: 'body'Piv txwv :. Qhov kev xaiv no muaj txiaj ntsig tshwj xeeb hauv qhov uas nws tso cai rau koj los tso cov lus qhia hauv qhov ntws ntawm cov ntaub ntawv nyob ze ntawm lub ntsiab lus tshwm sim - uas yuav tiv thaiv cov cuab yeej los ntawm ntab tawm ntawm qhov cuam tshuam thaum lub qhov rais hloov pauv.

ncua tus lej | khoom 0

ncua kev qhia thiab zais cov lus qhia (ms) - tsis siv rau phau ntawv txhais hom

Yog tias muaj tus lej nkag, ncua sijhawm yog siv rau ob qho tib si zais / qhia

Object structure yog:delay: { "show": 500, "hide": 100 }

html boolean cuav

Tso cai HTML hauv cov lus qhia.

Yog tias muaj tseeb, HTML cim npe hauv cov lus qhia titleyuav raug muab tso rau hauv cov lus qhia. Yog tias tsis tseeb, jQuery txoj textkev yuav raug siv los ntxig cov ntsiab lus rau hauv DOM.

Siv cov ntawv nyeem yog tias koj txhawj xeeb txog XSS tawm tsam.

tso chaw hlua | muaj nuj nqi 'sab saum toj'

Yuav ua li cas tso lub cuab yeej - pib | saum | hauv qab | sab laug | txoj cai.
Thaum autotau teev tseg, nws yuav dynamically reorient lub tooltip.

Thaum muaj nuj nqi yog siv los txiav txim qhov kev tso kawm, nws raug hu nrog lub tooltip DOM node raws li nws thawj qhov kev sib cav thiab lub triggering ntsiab DOM node raws li nws thib ob. Cov thisntsiab lus tau teeb tsa rau qhov piv txwv tooltip.

xaiv hlua | cuav cuav Yog hais tias muaj ib tug selector, tooltip khoom yuav delegated mus rau lub hom phiaj teev. Hauv kev xyaum, qhov no yog siv los kuj siv cov lus qhia rau dynamically ntxiv DOM ntsiab ( jQuery.onkev txhawb nqa). Saib qhov no thiab ib qho piv txwv qhia .
tus qauv txoj hlua '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'

Base HTML siv thaum tsim cov lus qhia.

Cov cuab yeej cuab tam titleyuav raug txhaj rau hauv .tooltip-inner.

.arrowyuav ua tus tooltip xub xub.

Cov txheej txheem wrapper sab nraud yuav tsum muaj cov .tooltipchav kawm thiab role="tooltip".

lub npe hlua | element | muaj nuj nqi ''

Default title value yog titleattribute tsis nyob.

Yog tias muaj kev ua haujlwm tau muab, nws yuav raug hu nrog nws cov thisntaub ntawv siv rau lub caij uas cov lus qhia txuas nrog.

ua rau txoj hlua 'hover focus'

Yuav ua li cas tooltip yog triggered - nyem | hover | tsom | phau ntawv. Koj tuaj yeem hla ntau qhov ua rau; cais lawv nrog ib qho chaw.

'manual'qhia tau hais tias cov lus qhia yuav tau ua rau programmatically ntawm cov .tooltip('show'), .tooltip('hide')thiab .tooltip('toggle')cov txheej txheem; tus nqi no tsis tuaj yeem ua ke nrog lwm qhov kev cuam tshuam.

'hover' on its own will result in tooltips that cannot be triggered via the keyboard, and should only be used if alternative methods for conveying the same information for keyboard users is present.

offset number | string 0 Offset of the tooltip relative to its target. For more information refer to Popper.js's offset docs.
fallbackPlacement string | array 'flip' Allow to specify which position Popper will use on fallback. For more information refer to Popper.js's behavior docs
boundary string | element 'scrollParent' Overflow constraint boundary of the tooltip. Accepts the values of 'viewport', 'window', 'scrollParent', or an HTMLElement reference (JavaScript only). For more information refer to Popper.js's preventOverflow docs.

Cov ntaub ntawv tus cwj pwm rau tus kheej cov lus qhia

Cov kev xaiv rau tus kheej cov lus qhia tuaj yeem hloov pauv tau los ntawm kev siv cov ntaub ntawv cwj pwm, raws li tau piav qhia saum toj no.

Cov txheej txheem

Asynchronous txoj kev thiab kev hloov

Txhua txoj kev API yog asynchronous thiab pib hloov pauv . Lawv rov qab mus rau tus neeg hu xov tooj sai li sai tau thaum qhov kev hloov pauv pib tab sis ua ntej nws xaus . Tsis tas li ntawd, ib txoj kev hu rau ib qho kev hloov pauv yuav raug tsis quav ntsej .

Saib peb cov ntaub ntawv JavaScript kom paub ntau ntxiv .

$().tooltip(options)

Txuas tus tooltip handler rau ib qho khoom sau.

.tooltip('show')

Qhia ib lub ntsiab lus qhia. Rov qab mus rau tus neeg hu ua ntej cov lus qhia tau tshwm sim tiag tiag (piv txwv li ua ntej qhov shown.bs.tooltipxwm txheej tshwm sim). Qhov no suav hais tias yog "kev tuav tes" ua rau cov lus qhia. Cov lus qhia nrog xoom-ntev lub npe yeej tsis tshwm sim.

$('#element').tooltip('show')

.tooltip('hide')

Hide ib lub ntsiab lus qhia. Rov qab mus rau tus neeg hu ua ntej cov lus qhia tau muab zais tiag tiag (piv txwv li ua ntej qhov hidden.bs.tooltipxwm txheej tshwm sim). Qhov no suav hais tias yog "kev tuav tes" ua rau cov lus qhia.

$('#element').tooltip('hide')

.tooltip('toggle')

Toggles ib lub ntsiab lus qhia. Rov qab mus rau tus neeg hu ua ntej cov lus qhia tau tshwm sim los yog muab zais (piv txwv li ua ntej qhov shown.bs.tooltipkev hidden.bs.tooltiptshwm sim tshwm sim). Qhov no suav hais tias yog "kev tuav tes" ua rau cov lus qhia.

$('#element').tooltip('toggle')

.tooltip('dispose')

Nias thiab rhuav tshem cov ntsiab lus ntawm cov cuab yeej. Cov lus qhia uas siv delegation (uas yog tsim los ntawm selectorkev xaiv ) tsis tuaj yeem raug rhuav tshem ib tus zuj zus ntawm cov xeeb leej xeeb ntxwv.

$('#element').tooltip('dispose')

.tooltip('enable')

Muab ib lub ntsiab lus qhia lub peev xwm los qhia. Cov lus qhia tau qhib los ntawm lub neej ntawd.

$('#element').tooltip('enable')

.tooltip('disable')

Tshem tawm lub peev xwm rau lub ntsiab lus qhia kom pom. Cov lus qhia yuav tsuas tuaj yeem pom yog tias nws rov qhib dua.

$('#element').tooltip('disable')

.tooltip('toggleEnabled')

Toggles lub peev xwm rau lub ntsiab lus qhia kom pom lossis zais.

$('#element').tooltip('toggleEnabled')

.tooltip('update')

Hloov kho txoj haujlwm ntawm lub ntsiab lus qhia.

$('#element').tooltip('update')

Cov xwm txheej

Hom xwm txheej Kev piav qhia
show.bs.tooltip Qhov xwm txheej no tua hluav taws tam sim ntawd thaum showhu ua piv txwv.
qhia.bs.tooltip Qhov kev tshwm sim no raug rho tawm haujlwm thaum cov lus qhia tau ua kom pom rau tus neeg siv (yuav tos rau CSS kev hloov pauv kom tiav).
hide.bs.tooltip Qhov xwm txheej no raug rho tawm haujlwm tam sim ntawd thaum hidehu ua piv txwv txoj kev.
zais.bs.tooltip Qhov kev tshwm sim no raug rho tawm haujlwm thaum cov lus qhia tau ua tiav tau muab zais los ntawm tus neeg siv (yuav tos rau CSS kev hloov pauv kom tiav).
inserted.bs.tooltip Qhov kev tshwm sim no raug rho tawm haujlwm tom qab qhov show.bs.tooltiptshwm sim thaum lub cuab yeej template tau ntxiv rau DOM.
$('#myTooltip').on('hidden.bs.tooltip', function () {
  // do something…
})