Tīpoka ki te ihirangi matua Tīpoka ki te whakaterenga tuhinga
Check
in English

Aki taputapu

Ko nga tuhinga me nga tauira mo te taapiri i nga taputapu Bootstrap ritenga me te CSS me te JavaScript ma te whakamahi i te CSS3 mo nga pakiwaituhi me nga raraunga-bs-huanga mo te rokiroki taitara rohe.

Tirohanga

Nga mea hei mohio ina whakamahi ana i te taputapu taputapu:

  • Ka whakawhirinaki nga aki taputapu ki te whare pukapuka tuatoru Popper mo te tuunga. Me whakauru koe popper.min.js i mua i bootstrap.jste , me whakamahi ranei tetahi bootstrap.bundle.min.jskei roto Popper.
  • Ko nga aki-utauta ka uru mai mo nga take mahi, no reira me arawhiti koe maau ano .
  • Ko nga aki taputapu whai taitara kore-roa e kore e whakaatuhia.
  • Tauwhāitihia container: 'body'kia karohia nga raru ki roto i nga waahanga uaua ake (penei i a maatau roopu whakauru, roopu paatene, aha atu).
  • Ko te whakaoho i nga aki taputapu mo nga huānga huna e kore e mahi.
  • Ko nga aki utauta mo nga huānga .disabledranei disabledme whakaoho i runga i tetahi huānga takai.
  • Ina puta mai i nga honongaitua e toro ana i nga raina maha, ka whakatetahi nga aki taputapu. Whakamahia white-space: nowrap;i runga i to <a>s ki te karo i tenei whanonga.
  • Me huna nga aki utauta i mua i te tangohanga o nga huānga e rite ana mai i te DOM.
  • Ka taea te whakakorikori i nga aki taputapu na tetahi huānga kei roto i te atarangi DOM.

Kua whiwhi katoa? Pai, kia kite tatou me pehea te mahi me etahi tauira.

Ma te taunoa, ka whakamahia e tenei waahanga te kai horoi i roto i te ihirangi, ka tihorea nga huānga HTML kaore e tino whakaaetia. Tirohia te waahanga sanitizer i roto i a maatau tuhinga JavaScript mo etahi atu korero.
Ko te awe hākoritanga o tēnei wāhanga e whakawhirinaki ana ki te prefers-reduced-motionuiui pāpāho. Tirohia te waahanga motini whakaheke o a maatau tuhinga whakaurunga .

Tauira

Whakahohehia nga aki taputapu

Ka rite ki te korero i runga ake nei, me arawhiti koe i nga aki taputapu i mua i te whakamahi. Ko tetahi huarahi ki te arawhiti i nga aki taputapu katoa i runga i te wharangi ko te kowhiri ma o raatau data-bs-togglehuanga, penei:

const tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]')
const tooltipList = [...tooltipTriggerList].map(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl))

Whakaparo ki runga i nga hononga i raro nei kia kite i nga aki taputapu:

Kuputuhi waahi hei whakaatu i etahi hononga- a- roto me nga aki taputapu. Ko tenei inaianei he whakakii noa, kaore he kaipatu. Ko nga ihirangi kua tukuna ki konei hei whakataurite i te ahua o nga tuhinga tuuturu . Me nga mea katoa hei hoatu whakaaro ki a koe mo te ahua o nga aki taputapu ina whakamahia ki nga ahuatanga o te ao. Na ko te tumanako kua kite koe me pehea te mahi a enei aki taputapu i runga i nga hononga , ina whakamahia e koe i runga i to ake pae, kaupapa ranei.

html
<p class="muted">Placeholder text to demonstrate some <a href="#" data-bs-toggle="tooltip" data-bs-title="Default tooltip">inline links</a> with tooltips. This is now just filler, no killer. Content placed here just to mimic the presence of <a href="#" data-bs-toggle="tooltip" data-bs-title="Another tooltip">real text</a>. And all that just to give you an idea of how tooltips would look when used in real-world situations. So hopefully you've now seen how <a href="#" data-bs-toggle="tooltip" data-bs-title="Another one here too">these tooltips on links</a> can work in practice, once you use them on <a href="#" data-bs-toggle="tooltip" data-bs-title="The last tip!">your own</a> site or project.
</p>
Tena koa ki te whakamahi i to HTML titleranei . data-bs-titleIna titlewhakamahia ana, ka whakakapi aunoatia e Popper me te data-bs-titlewa ka tukuna te huānga.

Aki taputapu ritenga

Kua taapirihia ki te v5.2.0

Ka taea e koe te whakarite i te ahua o nga aki taputapu ma te whakamahi i nga taurangi CSS . Ka whakatauhia e matou he karaehe ritenga ki data-bs-custom-class="custom-tooltip"te whanui i o maatau ahua ritenga me te whakamahi hei whakakore i tetahi taurangi CSS rohe.

.custom-tooltip {
  --bs-tooltip-bg: var(--bs-primary);
}
html
<button type="button" class="btn btn-secondary"
        data-bs-toggle="tooltip" data-bs-placement="top"
        data-bs-custom-class="custom-tooltip"
        data-bs-title="This top tooltip is themed via CSS variables.">
  Custom tooltip
</button>

Nga tohutohu

Whakaparohia ki runga i nga paatene kei raro nei kia kite i nga tohutohu aki taputapu e wha: runga, matau, raro, maui. Ka whakaatahia nga ahunga ina whakamahi i a Bootstrap i RTL.

<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="top" data-bs-title="Tooltip on top">
  Tooltip on top
</button>
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="right" data-bs-title="Tooltip on right">
  Tooltip on right
</button>
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="bottom" data-bs-title="Tooltip on bottom">
  Tooltip on bottom
</button>
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-placement="left" data-bs-title="Tooltip on left">
  Tooltip on left
</button>

Me te taapiri HTML ritenga:

<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-html="true" data-bs-title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">
  Tooltip with HTML
</button>

Me te SVG:

CSS

Taurangi

Kua taapirihia ki te v5.2.0

Hei waahanga o nga huringa CSS e tipu haere ana a Bootstrap, ka whakamahia e nga aki taputapu nga taurangi CSS rohe .tooltipmo te whakapai ake i te waa-tui. Ko nga uara mo nga taurangi CSS ka whakatauhia ma te Sass, no reira kei te tautoko tonu te whakaritenga Sass.

  --#{$prefix}tooltip-zindex: #{$zindex-tooltip};
  --#{$prefix}tooltip-max-width: #{$tooltip-max-width};
  --#{$prefix}tooltip-padding-x: #{$tooltip-padding-x};
  --#{$prefix}tooltip-padding-y: #{$tooltip-padding-y};
  --#{$prefix}tooltip-margin: #{$tooltip-margin};
  @include rfs($tooltip-font-size, --#{$prefix}tooltip-font-size);
  --#{$prefix}tooltip-color: #{$tooltip-color};
  --#{$prefix}tooltip-bg: #{$tooltip-bg};
  --#{$prefix}tooltip-border-radius: #{$tooltip-border-radius};
  --#{$prefix}tooltip-opacity: #{$tooltip-opacity};
  --#{$prefix}tooltip-arrow-width: #{$tooltip-arrow-width};
  --#{$prefix}tooltip-arrow-height: #{$tooltip-arrow-height};
  

Taurangi Sass

$tooltip-font-size:                 $font-size-sm;
$tooltip-max-width:                 200px;
$tooltip-color:                     $white;
$tooltip-bg:                        $black;
$tooltip-border-radius:             $border-radius;
$tooltip-opacity:                   .9;
$tooltip-padding-y:                 $spacer * .25;
$tooltip-padding-x:                 $spacer * .5;
$tooltip-margin:                    null; // TODO: remove this in v6

$tooltip-arrow-width:               .8rem;
$tooltip-arrow-height:              .4rem;
// fusv-disable
$tooltip-arrow-color:               null; // Deprecated in Bootstrap 5.2.0 for CSS variables
// fusv-enable

Whakamahinga

Ko te taputapu taputapu e whakaputa ihirangi me te tohu i runga i te tono, a ma te taunoa ka tuu i nga aki taputapu i muri i o raatau huānga whakaoho.

Whakaohohia te aki taputapu ma te JavaScript:

const exampleEl = document.getElementById('example')
const tooltip = new bootstrap.Tooltip(exampleEl, options)
Puawai automescroll

Ka ngana te tuunga Aki Utauta ki te huri aunoa i te wa e pai ana te ipu matuaoverflow: auto ki a overflow: scrollmaatau .table-responsive, engari kei te pupuri tonu i te tuunga o te tuunga taketake. Hei whakatau i tenei, tautuhia te boundarykowhiringa (mo te whakahuri pore e whakamahi ana i te popperConfigwhiringa) ki tetahi HTMLElement hei whakakore i te uara taunoa, 'clippingParents', penei document.body:

const tooltip = new bootstrap.Tooltip('#example', {
  boundary: document.body // or document.querySelector('#boundary')
})

Tohutohu

Ko te tohu tohu mo te akiutauta he datahuanga anake, titlekei runga i te huānga HTML e hiahia ana koe ki te whai aki taputapu. He maamaa noa te tohu tohu taputapu, ahakoa me whai tuunga (ma te taunoa, ka tautuhia tope te mono).

Ko te mahi aki taputapu mo te papapātuhi me nga kaiwhakamahi hangarau awhina

Me tapiri noa nga akiutauta ki nga huānga HTML e aro nui ana ki te papapātuhi me te tauwhitiwhiti (pērā i ngā hononga, ngā mana puka). Ahakoa ko nga huānga HTML noa (pērā i <span>te s) ka taea te arotahi ma te taapiri i te tabindex="0"huanga, ka taapirihia nga aukati ripa hoha me te rangirua i runga i nga huānga tauwhitiwhiti kore mo nga kaiwhakamahi papapātuhi, me te nuinga o nga hangarau awhina i tenei wa kaore i te panui i te aki taputapu i tenei ahuatanga. I tua atu, kaua e ti'aturi anake hoverhei keu mo to aki taputapu, na te mea ka kore e taea e au aki taputapu te whakaoho mo nga kaiwhakamahi papapātuhi.

<!-- HTML to write -->
<a href="#" data-bs-toggle="tooltip" data-bs-title="Some tooltip text!">Hover over me</a>

<!-- Generated markup by the plugin -->
<div class="tooltip bs-tooltip-top" role="tooltip">
  <div class="tooltip-arrow"></div>
  <div class="tooltip-inner">
    Some tooltip text!
  </div>
</div>

Huānga hauā

Ko nga huānga whai disabledhuanga karekau i te tauwhitiwhiti, ko te tikanga kaore e taea e nga kaiwhakamahi te aro, te whakaparo, te paato ranei i a raatau hei whakaoho i te aki-utauta (he popover ranei). Hei mahi whakatika, ka hiahia koe ki te whakaoho i te aki taputapu mai i te takai <div>, i te <span>, i hangaia he papapātuhi-arotahi ma te whakamahi tabindex="0".

html
<span class="d-inline-block" tabindex="0" data-bs-toggle="tooltip" data-bs-title="Disabled tooltip">
  <button class="btn btn-primary" type="button" disabled>Disabled button</button>
</span>

Kōwhiringa

I te mea ka tukuna nga whiringa ma nga huanga raraunga, JavaScript ranei, ka taea e koe te taapiri i tetahi ingoa whiringa ki data-bs-, penei i te data-bs-animation="{value}". Kia mohio koe ki te whakarereke i te momo keehi o te ingoa whiringa mai i te " CamelCase " ki te " kebab-case " ka tukuna nga whiringa ma nga huanga raraunga. Hei tauira, whakamahia data-bs-custom-class="beautifier"hei utu mo data-bs-customClass="beautifier".

Mai i te Bootstrap 5.2.0, ka tautoko nga waahanga katoa i tetahi huanga raraunga kua rahuitia hei whakamatautaudata-bs-config ka taea te whakanoho i te whirihoranga waahanga ngawari hei aho JSON. Ina he huānga data-bs-config='{"delay":0, "title":123}'me data-bs-title="456"nga huanga, ko te titleuara whakamutunga 456ko nga huanga raraunga motuhake ka takahia nga uara kua hoatu ki runga data-bs-config. I tua atu, ka taea e nga huanga raraunga o mua te whakanoho i nga uara JSON penei i te data-bs-delay='{"show":0,"hide":150}'.

Kia mahara ko nga take haumaru e kore e taea te hoatu i te sanitize, sanitizeFn, me nga whiringa ma te whakamahi i nga huanga raraunga.allowList
Ingoa Momo Taunoa Whakaahuatanga
allowList ahanoa Uara taunoa Ahanoa kei roto nga huanga me nga tohu kua whakaaetia.
animation boolean true Hoatu he whakawhiti memeha CSS ki te aki taputapu.
boundary aho, huānga 'clippingParents' Te rohe herenga puhake o te aki utauta (e pa ana ki te whakakē aukatiOverflow a Popper anake). Ma te taunoa, 'clippingParents'ka taea te whakaae ki tetahi tohutoro HTMLElement (ma JavaScript anake). Mo etahi atu korero tirohia nga tuhinga detectOverflow a Popper .
container aho, huānga, teka false He taapiri i te aki taputapu ki tetahi huānga motuhake. Tauira: container: 'body'. He tino whaihua tenei whiringa na te mea ka taea e koe te whakanoho i te akiutauta ki te rere o te tuhinga ki te taha o te huānga whakaoho - ka kore te aki utauta e maanu atu i te huānga whakaoho i te huringa o te matapihi.
customClass aho, mahi '' Tāpirihia nga karaehe ki te aki taputapu ina whakaatuhia ana. Kia mahara ko enei karaehe ka taapiri atu ki nga karaehe kua tohua ki te tauira. Hei taapiri i nga karaehe maha, wehehia ki nga mokowā: 'class-1 class-2'. Ka taea hoki e koe te tuku i tetahi mahi hei whakahoki i te aho kotahi kei roto etahi atu ingoa akomanga.
delay tau, ahanoa 0 Whakaroa te whakaatu me te huna i te aki taputapu (ms)—kaore e pa ki te momo keu a-ringa. Mena ka tukuna he nama, ka tukuna he whakaroa ki te huna/whakakitenga e rua. Ko te hanganga ahanoa: delay: { "show": 500, "hide": 100 }.
fallbackPlacements huinga ['top', 'right', 'bottom', 'left'] Tautuhia nga waahi whakamuri ma te whakarato i te rarangi o nga tuunga i roto i te rarangi (i runga i te raupapa manakohanga). Mo etahi atu korero tirohia nga tuhinga whanonga a Popper .
html boolean false Whakaaetia te HTML ki te aki taputapu. Mena he pono, ko nga tohu HTML kei roto i te aki taputapu titleka tukuna ki te akiutauta. Mena he teka, innerTextka whakamahia nga taonga ki te whakauru ihirangi ki te DOM. Whakamahia te kuputuhi mena kei te awangawanga koe mo nga whakaeke XSS.
offset huinga, aho, mahi [0, 0] Wehenga o te aki taputapu e pa ana ki tana whaainga. Ka taea e koe te tuku aho ki nga huanga raraunga me nga uara wehe piko penei: data-bs-offset="10,20". Ina whakamahia he taumahi ki te whakatau i te wehenga, ka karangahia me tetahi mea kei roto te tuunga popper, te tohutoro, me te popper rects hei tohenga tuatahi. Ka tukuna te node DOM huānga whakaoho hei tohenga tuarua. Me whakahoki te mahi i te huānga me nga tau e rua: paheke , tawhiti . Mo etahi atu korero tirohia nga tuhinga a Popper .
placement aho, mahi 'top' Me pehea te whakanoho i te aki taputapu: aunoa, runga, raro, maui, matau. Ina autotohua, ka whakahihikohia te aki taputapu. Ina whakamahia he taumahi ki te whakatau i te tuunga, ka kiia ko te tohu taputapu DOM node hei tohenga tuatahi me te huānga whakaoho DOM node hei tuarua. Kua thistautuhia te horopaki ki te tauira aki taputapu.
popperConfig null, ahanoa, mahi null Hei huri i te whirihora Popper taunoa a Bootstrap, tirohia te whirihoranga a Popper . Ina whakamahia he mahi hei hanga i te whirihoranga Popper, ka karangahia me tetahi mea kei roto te whirihoranga Popper taunoa a Bootstrap. Ka awhina koe ki te whakamahi me te hanumi i te taunoa me to ake whirihoranga. Me whakahoki te mahi i tetahi ahanoa whirihoranga mo Popper.
sanitize boolean true Whakahohe, whakakorehia ranei te horoi. Mena ka whakahohehia 'template', 'content'ka 'title'horoia nga whiringa.
sanitizeFn null, mahi null I konei ka taea e koe te whakarato i a koe ake mahi horoi. Ka whai hua tenei ki te hiahia koe ki te whakamahi i te whare pukapuka whakatapua ki te mahi horoi.
selector aho, teka false Mena ka whakaratohia he kaiwhiriwhiri, ka tukuna nga taonga aki taputapu ki nga whaainga kua tohua. I roto i te mahi, ka whakamahia tenei ki te whakamahi i nga aki taputapu ki te taapiri i nga huānga DOM ( jQuery.ontautoko). Tirohia tenei take me tetahi tauira korero .
template aho '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' HTML turanga hei whakamahi i te wa e hanga ana i te aki taputapu. titleKa werohia nga taputapu taputapu ki roto i te .tooltip-inner. .tooltip-arrowka waiho hei pere o te aki taputapu. Ko te huānga takai o waho me whai te .tooltipkaraehe me te role="tooltip".
title aho, huānga, mahi '' Te uara taitara taunoa mena titlekarekau he huanga. Mena ka hoatu he taumahi, ka karangahia me tana thishuinga tohutoro ki te huānga e piri ana te popover.
trigger aho 'hover focus' Me pehea te mahi aki taputapu: paato, whakaparo, arotahi, pukapuka. Ka taea e koe te whakawhiti i nga keu maha; wehehia me te waahi. 'manual'e tohu ana ka puta te aki taputapu ma te hotaka ma te .tooltip('show'), .tooltip('hide')me .tooltip('toggle')nga tikanga; e kore e taea te hono tenei uara ki tetahi atu keu. 'hover'ka puta ko nga aki taputapu e kore e taea te whakaoho ma te papapātuhi, me whakamahi mena he huarahi ke atu mo te kawe korero mo nga kaiwhakamahi papapātuhi.

Nga huanga raraunga mo nga aki taputapu takitahi

Ko nga whiringa mo nga aki taputapu takitahi ka taea te tautuhi ma te whakamahi i nga huanga raraunga, pera i te whakamarama i runga ake nei.

Te whakamahi mahi mepopperConfig

const tooltip = new bootstrap.Tooltip(element, {
  popperConfig(defaultBsPopperConfig) {
    // const newPopperConfig = {...}
    // use defaultBsPopperConfig if needed...
    // return newPopperConfig
  }
})

Nga tikanga

Nga tikanga tukutahi me nga whakawhitinga

Ko nga tikanga API katoa he tukutahi ka timata te whakawhiti . Ka hoki mai ano ki te kaikaranga ina timata te whakawhiti engari i mua i te mutunga . I tua atu, ka warewarehia te karanga tikanga mo tetahi waahanga whakawhiti .

Tirohia ta maatau tuhinga JavaScript mo etahi atu korero .

Tikanga Whakaahuatanga
disable Tango i te kaha mo te aki taputapu o tetahi huānga kia whakaatuhia. Ka taea anake te whakaatu i te aki taputapu mena ka whakahohea ano.
dispose Huna me te whakangaro i te aki taputapu o tetahi huānga (Ka tango i nga raraunga rongoa i te huānga DOM). Ko nga aki utauta e whakamahi ana i te tukunga (he mea hanga ma te whakamahi i te selectorwhiringa ) kaore e taea te whakakore takitahi i runga i nga huānga whakaoho uri.
enable Ka hoatu ki te akiutauta o tetahi huānga te kaha ki te whakaatu. Ko nga akiutauta ka taea te taunoa.
getInstance Tikanga pateko e taea ai e koe te tiki i te tauira aki taputapu e hono ana ki tetahi huānga DOM, ki te hanga i tetahi mea hou mena kaore i arawhitia.
getOrCreateInstance Tikanga pateko e taea ai e koe te tiki i te tauira aki taputapu e hono ana ki tetahi huānga DOM, ki te hanga i tetahi mea hou mena kaore i arawhitia.
hide Hunaia te aki taputapu o tetahi huānga. Ka hoki ki te kaiwaea i mua i te hunanga o te aki taputapu (ara i mua i te hidden.bs.tooltipputa o te takahanga). Ka kiia tenei he "a-ringa" te whakaoho o te aki taputapu.
setContent Ka hoatu he huarahi ki te huri i nga ihirangi o te aki taputapu i muri i tana arawhitinga.
show He whakaatu i te aki taputapu o tetahi huānga. Ka hoki ki te kaiwaea i mua i te whakaaturanga o te aki taputapu (arā i mua i te shown.bs.tooltipputa o te takahanga). Ka kiia tenei he "a-ringa" te whakaoho o te aki taputapu. Ko nga aki utauta me nga taitara kore-roa e kore e whakaatuhia.
toggle Ka takahurihia te akiutauta o tetahi huānga. Ka hoki ki te kaiwaea i mua i te whakaaturanga, i te huna ranei o te aki taputapu (arā, i mua i te puta o shown.bs.tooltipte hidden.bs.tooltiptakahanga). Ka kiia tenei he "a-ringa" te whakaoho o te aki taputapu.
toggleEnabled Ka takahuri i te kaha mo te akiutauta o tetahi huānga ki te whakaatu, huna ranei.
update He whakahōu i te tūnga o te akiutauta huānga.
const tooltip = bootstrap.Tooltip.getInstance('#example') // Returns a Bootstrap tooltip instance

// setContent example
tooltip.setContent({ '.tooltip-inner': 'another title' })
Ka whakaaehia e te setContentaratuka tetahi objecttautohe, he kaikowhiri whaimana ia taonga-matua i stringroto i te tauira popover, a ko ia uara-waahanga e hono ana ka taea te string| element| function| null

Nga huihuinga

Takahanga Whakaahuatanga
hide.bs.tooltip Ka puhia tonutia tenei takahanga ina hidekua karangahia te aratuka tauira.
hidden.bs.tooltip Ka puhia tenei takahanga ina mutu te hunanga o te popover mai i te kaiwhakamahi (ka tatari kia oti nga whakawhitinga CSS).
inserted.bs.tooltip Ka puhia tenei takahanga i muri i te show.bs.tooltiptakahanga i te wa i taapirihia te tauira aki taputapu ki te DOM.
show.bs.tooltip Ka pupuhi tenei takahanga ina ka showkarangahia te aratuka tauira.
shown.bs.tooltip Ka pupuhihia tenei takahanga i te wa i kitea ai te popover ki te kaiwhakamahi (ka tatari kia oti nga whakawhitinga CSS).
const myTooltipEl = document.getElementById('myTooltip')
const tooltip = bootstrap.Tooltip.getOrCreateInstance(myTooltipEl)

myTooltipEl.addEventListener('hidden.bs.tooltip', () => {
  // do something...
})

tooltip.hide()