Saltatu eduki nagusira Saltatu dokumentuen nabigaziora
in English

Erreminta-aholkuak

Bootstrap tresna-aholku pertsonalizatuak CSS eta JavaScript erabiliz CSS3 erabiliz animazioetarako eta datu-bs-atributuak tokiko izenburu biltegiratzeko dokumentazioa eta adibideak.

Ikuspegi orokorra

Tooltip plugina erabiltzean jakin beharrekoak:

  • Tresna-informazioak Popper hirugarren liburutegian oinarritzen dira kokatzeko. Popper.min.js sartu behar duzu bootstrap.js baino lehen edo Popper duen bootstrap.bundle.min.js/ erabili bootstrap.bundle.jsbehar duzu tresna-aholkuak funtziona dezan!
  • Tresn-informazioak errendimendu arrazoiengatik aukeratzen dira, beraz, zuk zeuk hasieratu behar dituzu .
  • Luzera zeroko tituluak dituzten tresna-aholkuak ez dira inoiz bistaratzen.
  • Zehaztu container: 'body'osagai konplexuagoetan (adibidez, gure sarrera-taldeak, botoi-taldeak, etab.) arazoak errendatzea saihesteko.
  • Ezkutuko elementuei buruzko argibideak abiarazteak ez du funtzionatuko.
  • Elementuentzako tresna-informazioak bilgarri .disabled- disabledelementu batean abiarazi behar dira.
  • Lerro bat baino gehiago hartzen dituzten hiperesteketatik abiarazten denean, tresna-aholkuak zentratuta egongo dira. Erabili white-space: nowrap;zure aldean <a>portaera hori saihesteko.
  • Tresn-informazioak ezkutatu egin behar dira dagozkien elementuak DOMetik kendu aurretik.
  • Tresn-informazioak itzaleko DOM baten barruan dagoen elementu bati esker abiarazi daitezke.
Lehenespenez, osagai honek barneko edukien desinfektatzailea erabiltzen du, berariaz onartzen ez diren HTML elementuak kentzen dituena. Ikusi desinfektatzaileen atala gure JavaScript dokumentazioan xehetasun gehiago lortzeko.
Osagai honen animazio-efektua prefers-reduced-motionmultimedia kontsultaren menpe dago. Ikusi gure irisgarritasun-dokumentazioaren mugimendu murriztuaren atala .

Hori guztia lortu duzu? Bikaina, ikus dezagun nola funtzionatzen duten adibide batzuekin.

Adibidea: gaitu tresna-informazioak nonahi

Orrialde bateko tresna-aholku guztiak hasieratzeko modu bat haien data-bs-toggleatributuaren arabera hautatzea izango litzateke:

var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
  return new bootstrap.Tooltip(tooltipTriggerEl)
})

Adibideak

Pasatu ondoko esteken gainean tresna-aholkuak ikusteko:

Leku-markaren testua lerroko esteka batzuk argibideekin erakusteko. Hau orain betegarria besterik ez da, hiltzailerik ez. Hemen jarritako edukia benetako testuaren presentzia imitatzeko . Eta hori guztia mundu errealeko egoeretan erabilita tresna-informazioak nola itxura izango luketen jakiteko. Beraz, zorionez, orain ikusi duzula esteketako aholku hauek praktikan nola funtziona dezaketen, behin zure webgunean edo proiektuan erabiltzen dituzunean .

Pasatu sakatu beheko botoien gainean lau tresna-aholkuak ikusteko: goiko, eskuineko, beheko eta ezkerreko. Jarraibideak islatzen dira Bootstrap RTL-n erabiltzean.

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

Eta HTML pertsonalizatua gehituta:

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

SVG batekin:

Sass

Aldagaiak

$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:                    0;

$tooltip-arrow-width:               .8rem;
$tooltip-arrow-height:              .4rem;
$tooltip-arrow-color:               $tooltip-bg;

Erabilera

Tooltip pluginak edukia eta markak sortzen ditu eskaeraren arabera, eta, modu lehenetsian, tresna-aholkuak jartzen ditu abiarazte-elementuaren ondoren.

Aktibatu tresna-informazioa JavaScript bidez:

var exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, options)
Gainezka autoetascroll

Tresn-informazioaren posizioa automatikoki aldatzen saiatzen da edukiontzi nagusi batek gure gunea duen overflow: autoedo overflow: scrollatsegin duenean .table-responsive, baina hala ere jatorrizko kokapenari eusten dio. Hau konpontzeko, ezarri boundaryaukera (aukera erabiliz irauli popperConfigaldagailurako) edozein HTMLElement balio lehenetsia gainidazteko 'clippingParents', adibidez document.body:

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

Markatzea

Tresna-informazio baterako beharrezkoa den marka dataatributu bat baino ez da eta titletresna-aholkua izan nahi duzun HTML elementuan. Tresna-informazio baten markaketa sinple samarra da, nahiz eta posizio bat behar duen (lehenespenez, toppluginak ezarrita).

Teklatuaren eta laguntza-teknologien erabiltzaileentzako tresna-informazioak funtzionatzea

Tradizionalki teklatuan fokua eta elkarreragilea diren HTML elementuei (adibidez, estekak edo inprimaki-kontrolak, adibidez) tresna-aholkuak gehitu behar dizkiezu. HTML elementu arbitrarioak (adibidez, <span>s) atributua gehituta foka daitezkeen arren tabindex="0", honek teklatu erabiltzaileentzako elementu interaktiboak ez diren elementuetan tabulazio gogaikarri eta nahasgarriak gehituko ditu eta gaur egun laguntza-teknologia gehienek ez dute tresnaren berri ematen egoera honetan. Gainera, ez zaitez bakarrik fidatu hoverzure tresna-informazioaren abiarazle gisa, horrek zure tresna-aholkuak ezinezko bihurtuko baititu teklatuaren erabiltzaileentzat.

<!-- HTML to write -->
<a href="#" data-bs-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="tooltip-arrow"></div>
  <div class="tooltip-inner">
    Some tooltip text!
  </div>
</div>

Desgaitutako elementuak

Atributua duten elementuak disabledez dira interaktiboak, hau da, erabiltzaileek ezin dituzte bideratu, pasa edo klik egin tresna-informazio bat (edo popover) abiarazteko. Konponbide gisa, tresna-informazioa abiarazi nahi duzu bilgarri batetik <div>edo <span>, hobeki teklatua bideratzeko modukoa erabiliz tabindex="0".

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

Aukerak

Aukerak datu-atributuen edo JavaScript bidez pasa daitezke. Datu-atributuetarako, erantsi aukera-izena data-bs-, hemen bezala data-bs-animation="". Ziurtatu aukera-izena kamelCase-tik kebab-case-ra aldatzen duzula aukerak datu-atributuen bidez aukerak pasatzean. Adibidez, erabili beharrean data-bs-customClass="beautifier", erabili data-bs-custom-class="beautifier".

Kontuan izan segurtasun arrazoiengatik sanitize, sanitizeFn, eta allowListaukerak ezin direla eman datu-atributuak erabiliz.
Izena Mota Lehenetsia Deskribapena
animation boolearra true Aplikatu CSS desagertze-trantsizioa tresna-informazioari
container katea | elementua | faltsua false

Elementu zehatz bati eransten dio tresna-informazioa. Adibidea container: 'body':. Aukera hau bereziki erabilgarria da, tresna-abiarazlea dokumentuaren fluxuan abiarazte-elementuaren ondoan kokatzeko aukera ematen baitu, eta horrek tresna-abiarazlea elementu abiarazletik mugitzea eragotziko du leihoaren tamaina aldatzean.

delay zenbakia | objektua 0

Atzeratu tresna-informazioa erakustea eta ezkutatzea (ms) - ez dagokio eskuzko abiarazle motari

Zenbaki bat ematen bada, atzerapena aplikatuko da ezkutatzeko/erakusteko

Objektuaren egitura hau da:delay: { "show": 500, "hide": 100 }

html boolearra false

Baimendu HTML tresna-informazioan.

Egia bada, tresna-informazioko HTML etiketak tresna- titleinformazioan errendatuko dira. Faltsua bada, innerTextpropietatea erabiliko da edukia DOMean txertatzeko.

Erabili testua XSS erasoekin kezkatuta bazaude.

placement katea | funtzioa 'top'

Nola kokatu tresna-informazioa - auto | goian | behea | ezkerra | eskubidea.
Zehazten denean auto, tresna-informazioa dinamikoki berbideratuko du.

Funtzio bat kokapena zehazteko erabiltzen denean, tresna-informazioa DOM nodoa deitzen zaio lehen argumentu gisa eta abiarazte elementua DOM nodoa bigarren gisa. thisTestuingurua argibide-instantzian ezartzen da .

selector katea | faltsua false Hautatzailea ematen bada, tresna-informazioko objektuak zehaztutako helburuetara delegatuko dira. jQuery.onPraktikan, hau dinamikoki gehitutako DOM elementuei ( euskarria) tresna-aholkuak aplikatzeko erabiltzen da . Ikusi hau eta informazio-adibide bat .
template katea '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'

Oinarrizko HTML tresna-informazioa sortzean erabiltzeko.

Tresna- titleinformazioa injektatuko da .tooltip-inner.

.tooltip-arrowtresna-informazioaren gezia bihurtuko da.

Kanpoko bilgarri-elementuak .tooltipklasea eta role="tooltip".

title katea | elementua | funtzioa ''

Izenburuaren balio lehenetsia titleatributua ez badago.

thisFuntzio bat ematen bada, tresna -informazioa erantsita dagoen elementuari erreferentzia ezarrita deituko zaio .

trigger katea 'hover focus'

Nola abiarazten den tresna-informazioa - egin klik | pasatzea | fokua | eskuliburua. Hainbat abiarazle pasa ditzakezu; bereiz itzazu tarte batekin.

'manual'.show()tresna-informazioa , .hide()eta .toggle()metodoen bidez programatikoki abiaraziko dela adierazten du ; balio hori ezin da beste edozein abiarazlerekin konbinatu.

'hover'bere kabuz teklatuaren bidez abiarazi ezin diren tresna-aholkuak sortuko dira, eta teklatuaren erabiltzaileei informazio bera helarazteko metodo alternatiboak badaude soilik erabili behar dira.

fallbackPlacements array ['top', 'right', 'bottom', 'left'] Definitu ordezko kokapenak array-ko kokapen-zerrenda bat emanez (hobespenen arabera). Informazio gehiagorako, jo Popperren portaera dokumentuetara
boundary katea | elementua 'clippingParents' Tresnaren argibidearen gainezka-murriztapenaren muga (Popper-en preventOverflow aldatzaileari soilik aplikatzen zaio). Lehenespenez, 'clippingParents'HTMLElement erreferentzia bat da eta onartu dezake (JavaScript bidez soilik). Informazio gehiagorako, ikusi Popper-en detectOverflow docs .
customClass katea | funtzioa ''

Gehitu klaseak tresna-argitara erakusten denean. Kontuan izan klase hauek txantiloian zehaztutako klaseez gain gehituko direla. Hainbat klase gehitzeko, bereiz itzazu zuriuneekin: 'class-1 class-2'.

Klase-izen gehigarriak dituen kate bakarra itzuli beharko lukeen funtzio bat ere pasa dezakezu.

sanitize boolearra true Gaitu edo desgaitu desinfekzioa. Aktibatzen bada 'template'eta 'title'aukerak garbituko dira. Ikusi desinfektatzaileen atala gure JavaScript dokumentazioan .
allowList objektua Balio lehenetsia Baimendutako atributuak eta etiketak dituen objektua
sanitizeFn nulua | funtzioa null Hemen zure higienizazio funtzioa horni dezakezu. Hau erabilgarria izan daiteke garbiketa egiteko liburutegi dedikatu bat erabili nahi baduzu.
offset array | katea | funtzioa [0, 0]

Aholkuaren desplazamendua bere xedearekiko. Datu-atributuetan kate bat pasa dezakezu komaz bereizitako balioekin:data-bs-offset="10,20"

Desplazamendua zehazteko funtzio bat erabiltzen denean, lehen argumentu gisa popper-aren kokapena, erreferentzia eta popper zuzenak dituen objektu batekin deitzen da. DOM nodo abiarazteko elementua bigarren argumentu gisa pasatzen da. Funtzioak bi zenbaki dituen array bat itzuli behar du: .[skidding, distance]

Informazio gehiago lortzeko, ikusi Popper-en offset docs .

popperConfig nulua | objektua | funtzioa null

Bootstrap-en Popper konfigurazio lehenetsia aldatzeko, ikusi Popper-en konfigurazioa .

Popper konfigurazioa sortzeko funtzio bat erabiltzen denean, Bootstrap-en Popper konfigurazio lehenetsia duen objektu batekin deitzen da. Lehenetsia zure konfigurazioarekin erabiltzen eta batzen laguntzen dizu. Funtzioak konfigurazio-objektu bat itzuli behar du Popperrentzat.

Banakako argibideetarako datu-atributuak

Banakako argibideetarako aukerak bestela datu-atributuak erabiliz zehaztu daitezke, goian azaldu bezala.

Funtzioa erabilizpopperConfig

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

Metodoak

Metodo asinkronoak eta trantsizioak

API metodo guztiak asinkronoak dira eta trantsizio bat hasten dute . Trantsizioa hasi bezain laster baina amaitu baino lehen itzultzen dira deitzailearengana . Gainera, trantsizio-osagai baten metodo-dei bati ez ikusi egingo zaio .

Ikus gure JavaScript dokumentazioa informazio gehiago lortzeko .

erakutsi

Elementu baten argibidea erakusten du. Deitzaileari itzultzen zaio tresna-informazioa benetan erakutsi aurretik (hau da, shown.bs.tooltipgertaera gertatu baino lehen). Hau tresna-informazioaren "eskuz" abiaraztekotzat hartzen da. Luzera zeroko tituluak dituzten tresna-aholkuak ez dira inoiz bistaratzen.

tooltip.show()

ezkutatu

Elementu baten argibidea ezkutatzen du. Deitzen duenari itzultzen zaio tresna-informazioa benetan ezkutatu baino lehen (hau da, hidden.bs.tooltipgertaera gertatu baino lehen). Hau tresna-informazioaren "eskuz" abiaraztekotzat hartzen da.

tooltip.hide()

txandakatu

Elementu baten tresna-informazioa aktibatzen du. Deitzaileari itzultzen zaio tresna-informazioa benetan erakutsi edo ezkutatu aurretik (hau da, shown.bs.tooltipedo hidden.bs.tooltipgertaera gertatu baino lehen). Hau tresna-informazioaren "eskuz" abiaraztekotzat hartzen da.

tooltip.toggle()

bota

Elementu baten informazioa ezkutatu eta suntsitzen du (DOM elementuan gordetako datuak kentzen ditu). Ordezkapena erabiltzen duten tresna- informazioak ( selectoraukera erabiliz sortzen direnak ) ezin dira banan-banan suntsitu ondorengo abiarazle-elementuetan.

tooltip.dispose()

gaitu

Elementu baten argibideari erakusteko gaitasuna ematen dio. Tresn-informazioak lehenespenez gaituta daude.

tooltip.enable()

desgaitu

Elementu baten tresna-informazioa erakusteko gaitasuna kentzen du. Tresna-informazioa berriro gaituta badago soilik erakutsi ahal izango da.

tooltip.disable()

toggleEnabled

Elementu baten tresna-informazioa erakusteko edo ezkutatzeko gaitasuna aldatzen du.

tooltip.toggleEnabled()

eguneratu

Elementu baten argibidearen posizioa eguneratzen du.

tooltip.update()

getInstance

Metodo estatikoa DOM elementu batekin erlazionatutako tresna-informazio instantzia lortzeko aukera ematen duena

var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance

getOrCreateInstance

Metodo estatikoa , DOM elementu batekin erlazionatutako tresna-informazio instantzia lortzeko edo berri bat sortzeko aukera ematen duena, hasieratu ez bazen.

var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getOrCreateInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance

Gertaerak

Gertaera mota Deskribapena
show.bs.tooltip Gertaera hau berehala abiarazten da showinstantzia-metodoa deitzen denean.
shown.bs.tooltip Gertaera hau tresna-informazioa erabiltzailearentzat ikusgai jartzen denean abiarazten da (CSS trantsizioak amaitu arte itxarongo da).
hide.bs.tooltip Gertaera hau berehala abiarazten da hideinstantzia-metodoa deitzen denean.
hidden.bs.tooltip Gertaera hau tresna-informazioa erabiltzaileari ezkutatzen amaitzen denean abiarazten da (CSS trantsizioak amaitu arte itxarongo da).
inserted.bs.tooltip Gertaera hau gertaeraren ondoren abiarazten da tresna- show.bs.tooltipinformazio txantiloia DOM-era gehitu denean.
var myTooltipEl = document.getElementById('myTooltip')
var tooltip = new bootstrap.Tooltip(myTooltipEl)

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

tooltip.hide()