Gurallar
CSS3 we animasiýa üçin CSS3 ulanyp, ýerli Bootstrap gurallaryny goşmak üçin resminamalar we mysallar, ýerli at saklamak üçin maglumat-bs-atributlary.
Gysgaça syn
Gurallar üçin plugin ulanylanda bilmeli zatlar:
- Gurallar, ýerleşiş üçin 3-nji tarap kitaphanasy Popper -e bil baglaýar . Bootstrap.js-dan öň popper.min.js goşmaly ýa -da gurallaryň işlemegi üçin Popper-i ulanmaly
bootstrap.bundle.min.js
/ ulanmaly!bootstrap.bundle.js
- Gurallar öndürijilik sebäplerine görä saýlanýar, şonuň üçin olary özüňiz başlamaly .
- Nol uzynlykdaky atlar bilen gurallar hiç haçan görkezilmeýär.
container: 'body'
Has çylşyrymly komponentlerde kynçylyk döretmezligi kesgitläň (giriş toparlarymyz, düwme toparlarymyz we ş.m.) .- Gizlin elementlerdäki gural gurallary işlemez.
- Gurallar
.disabled
ýa-dadisabled
elementler üçin örtük elementinde başlamaly. - Birnäçe setiri öz içine alýan giper-baglanyşyklardan başlanda, gurallar merkezleşdiriler. Bu gylyk-häsiýetden gaça durmak üçin s-leri
white-space: nowrap;
ulanyň .<a>
- Gurallar degişli elementleri DOM-dan aýrylmazdan ozal gizlenmeli.
- Gurallar, kölegeli DOM içindäki bir elementiň kömegi bilen işledilip bilner.
prefers-reduced-motion
media talaplaryna baglydyr. Elýeterlilik resminamalarymyzyň azaldylan hereket bölümine serediň
.
Bularyň hemmesi barmy? Ajaýyp, käbir mysallar bilen nähili işleýändigini göreliň.
Mysal: Gural gurallaryny hemme ýerde işlediň
Sahypadaky ähli gural görkezmelerini başlamagyň bir usuly, olary data-bs-toggle
atributlary boýunça saýlamak bolar:
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
return new bootstrap.Tooltip(tooltipTriggerEl)
})
Mysallar
Gural görkezmelerini görmek üçin aşakdaky baglanyşyklara basyň:
Gurallar bilen käbir içerki baglanyşyklary görkezmek üçin ýer eýesi teksti . Bu indi diňe doldurgyç, ganhor däl. Bu ýerde diňe hakyky tekstiň barlygyny görkezmek üçin ýerleşdirilen mazmun . Bularyň hemmesi, hakyky ýagdaýlarda ulanylanda gurallaryň nähili görünjekdigi barada düşünje bermek üçin. Şeýlelik bilen, baglanyşyklardaky bu gurallaryň öz sahypaňyzda ýa-da taslamaňyzda ulananyňyzdan soň iş ýüzünde nähili işläp biljekdigini indi görersiňiz diýip umyt edýärin .
Dört gural görkezmesini görmek üçin aşakdaky düwmeleriň üstünden basyň: ýokarky, sag, aşaky we çep. RTL-de Bootstrap ulanylanda görkezmeler aýnalanýar.
<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>
Customörite HTML goşuldy:
<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 bilen:
Sass
Üýtgeýjiler
$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;
Ulanylyşy
Gurallar üçin plugin isleg boýunça mazmun we bellik döredýär we adaty ýagdaýda gural elementlerini trigger elementinden soň ýerleşdirýär.
Gurallar maslahatyny JavaScript arkaly işlediň:
var exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, options)
Daşmak auto
wescroll
Tooltip ýagdaýy ene-atanyň konteýnerindeoverflow: auto
ýa-da bizde overflow: scroll
bolanda awtomatiki üýtgemäge synanyşýar .table-responsive
, emma asyl ýerleşişini saklaýar. Bu meseläni çözmek üçin, boundary
opsiýany (opsiýany ulanyp flip üýtgediji üçin popperConfig
) islendik HTMLElement-e deslapky bahany ýok etmek üçin 'clippingParents'
düzüň document.body
:
var exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, {
boundary: document.body // or document.querySelector('#boundary')
})
Bellik
Gurallar üçin zerur bellik diňe bir data
atribut bolup title
, gurallar maslahatyny almak isleýän HTML elementiňizde. Gurallar maslahatynyň döredilen belligi gaty ýönekeý, ýöne bir pozisiýa talap edýär (deslapky görnüşde, top
plugin tarapyndan kesgitlenýär).
Klawiatura we kömekçi tehnologiýa ulanyjylary üçin gural görkezmelerini işlemek
Diňe klawiatura gönükdirilen we interaktiw (baglanyşyklar ýa-da forma dolandyryşlary ýaly) HTML elementlerine gural görkezmelerini goşmaly. Esassyz HTML elementleri (meselem <span>
) tabindex="0"
atribut goşmak bilen ünsi jemläp boljakdygyna garamazdan, bu klawiatura ulanyjylary üçin interaktiw däl elementlere potensial gaharlandyryjy we bulaşyk goýma duralgalaryny goşar we häzirki wagtda köp kömekçi tehnologiýalar bu ýagdaýda gural görkezmesini yglan etmeýär. hover
Mundan başga-da, diňe gurallar maslahaty üçin trigger hökmünde bil baglamaň , sebäbi bu gural gurallaryňyzy klawiatura ulanyjylary üçin döredip bilmez.
<!-- 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>
Öçürilen elementler
Sypaty bolan elementler disabled
interaktiw däl, ýagny gurallar (ýa-da popover) açmak üçin ulanyjylar ünsi jemläp, aýlap ýa-da basyp bilmeýärler. Iş usuly hökmünde, gural görkezijisini bir örtükden <div>
ýa-da iň <span>
oňat klawiatura gönükdirilen ulanyp başlamak islärsiňiz 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>
Görnüş
Opsiýalar maglumat atributlary ýa-da JavaScript arkaly geçirilip bilner. Maglumat atributlary üçin, opsiýanyň adyny data-bs-
bolşy ýaly goşuň data-bs-animation=""
. Opsiýalary maglumat atributlary arkaly geçireniňizde, opsiýanyň adynyň görnüşini kamelCase-den kebab-kase üýtgediň. Mysal üçin, ulanmagyň ýerine data-bs-customClass="beautifier"
ulanyň data-bs-custom-class="beautifier"
.
sanitize
,
sanitizeFn
we
allowList
atributlary maglumat atributlaryny ulanyp üpjün edip bolmajakdygyny unutmaň.
Ady | Görnüşi | Bellenen | Düşündiriş |
---|---|---|---|
animation |
boolean | true |
Gurallar maslahatyna CSS solgun geçişini ulanyň |
container |
setir | element | ýalan | false |
Gurallar maslahatyny belli bir elemente goşýar. Mysal : |
delay |
sany | obýekt | 0 |
Gural görkezmesini görkezmek we gizlemek (ms) - el bilen işleýän trigger görnüşine degişli däl San berilse, gizlemek / görkezmek üçin gijikdirme ulanylýar Obýektiň gurluşy: |
html |
boolean | false |
Gurallar bölüminde HTML-e rugsat beriň. Çyn bolsa, gurallar maslahatynda HTML bellikleri gurallar maslahatynda XSS hüjümleri barada alada edýän bolsaňyz, tekst ulanyň. |
placement |
setir | funksiýasy | 'top' |
Gurallar maslahatyny nädip ýerleşdirmeli - awto | ýokarky | aşaky | çep | dogry. Placerleşişi kesgitlemek üçin bir funksiýa ulanylanda, ilkinji argumenti hökmünde gural gurallary DOM düwünine, ikinjisi hökmünde hereketlendiriji element DOM düwünine diýilýär. Kontekst |
selector |
setir | ýalan | false |
Eger saýlaýjy üpjün edilse, gurallar obýektleri görkezilen nyşanlara berler. Iş ýüzünde, bu dinamiki goşulan DOM elementlerine ( jQuery.on goldaw) gural görkezmelerini ulanmak üçin hem ulanylýar. Muny we maglumat beriji mysaly görüň . |
template |
setir | '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' |
Gurallar maslahatyny döredeniňizde ulanmak üçin HTML esaslaň. Gurallar maslahatyna
Daşarky örtük elementiniň |
title |
setir | element | funksiýasy | '' |
Sypat ýok bolsa, deslapky at bahasy Eger bir funksiýa berilse, |
trigger |
setir | 'hover focus' |
Gurallar maslahatynyň nädip döredilendigi - basyň | aýlanmak | fokus | gollanma. Birnäçe trigger geçirip bilersiňiz; boşluk bilen bölüň.
|
fallbackPlacements |
massiw | ['top', 'right', 'bottom', 'left'] |
Yzyna ýerleşdirilişleri sanawda (isleg boýunça) ýerleşdirmek arkaly kesgitläň. Has giňişleýin maglumat üçin Popperiň özüni alyp baryş resminamalaryna serediň |
boundary |
setir | elementi | 'clippingParents' |
Gurallar maslahatynyň artykmaç çäk çäkleri (diňe Popper-iň öňüni alýanOverflow modifikatoryna degişlidir). Düzgüne görä, ol 'clippingParents' HTMLElement salgylanmasyny kabul edip biler (diňe JavaScript arkaly). Has giňişleýin maglumat üçin Popper-iň detectOverflow resminamalaryna serediň . |
customClass |
setir | funksiýasy | '' |
Görkezilende gurallar maslahatyna sapak goşuň. Bu synplaryň şablonda görkezilen islendik sapaklara goşmaça goşuljakdygyny unutmaň. Birnäçe synp goşmak üçin boşluklar bilen bölüň : Şeýle hem goşmaça synp atlaryny öz içine alýan bir setiri yzyna gaýtarmaly funksiýany geçirip bilersiňiz. |
sanitize |
boolean | true |
Arassaçylygy işletmek ýa-da öçürmek. Işledilen 'template' we 'title' opsiýalar arassalanar. JavaScript resminamalarymyzdaky arassaçylyk bölümine serediň . |
allowList |
obýekt | Bellenen baha | Rugsat berlen atributlary we bellikleri öz içine alýan obýekt |
sanitizeFn |
null | funksiýasy | null |
Bu ýerde öz arassaçylyk funksiýaňyzy üpjün edip bilersiňiz. Arassaçylyk işini geçirmek üçin ýörite kitaphanany ulanmagy makul bilýän bolsaňyz, bu peýdaly bolup biler. |
offset |
massiw | setir | funksiýasy | [0, 0] |
Gurallar maslahatynyň nyşanyna görä ofset. Maglumat atributlarynda yzygiderli bölünen bahalar bilen bir setir geçirip bilersiňiz: Ofset kesgitlemek üçin bir funksiýa ulanylanda, ilkinji argumenti hökmünde popper ýerleşdirilişi, salgylanma we popper düzedişleri bolan obýekt bilen atlandyrylýar. Tüweleme elementi DOM düwmesi ikinji argument hökmünde geçýär. Funksiýa iki san bilen bir massiw gaýtarmaly : . Has giňişleýin maglumat üçin Popper-iň ofset resminamalaryna serediň . |
popperConfig |
null | obýekt | funksiýasy | null |
Bootstrap-yň deslapky Popper konfigurasiýasyny üýtgetmek üçin Popper-iň konfigurasiýasyna serediň . Popper konfigurasiýasyny döretmek üçin bir funksiýa ulanylanda, Bootstrap-yň deslapky Popper konfigurasiýasyny öz içine alýan obýekt bilen atlandyrylýar. Dymmaklygy öz konfigurasiýaňyz bilen ulanmaga we birleşdirmäge kömek edýär. Funksiýa Popper üçin konfigurasiýa obýektini yzyna gaýtarmaly. |
Aýry-aýry gurallar üçin maglumatlar atributlary
Aýry-aýry gurallar üçin opsiýalar, ýokarda düşündirilişi ýaly, maglumat atributlaryny ulanmak arkaly kesgitlenip bilner.
Bilen işlemekpopperConfig
var tooltip = new bootstrap.Tooltip(element, {
popperConfig: function (defaultBsPopperConfig) {
// var newPopperConfig = {...}
// use defaultBsPopperConfig if needed...
// return newPopperConfig
}
})
Usullar
Asynkron usullar we geçişler
APIhli API usullary asynkron bolup, geçişe başlaýar . Geçiş başlan badyna, ýöne gutarmanka jaň edijä gaýdyp gelýärler . Mundan başga-da, geçiş komponentine çagyryş usuly hasaba alynmaz .
Has giňişleýin maglumat üçin JavaScript resminamalarymyza serediň .
görkezmek
Bir elementiň gural görkezmesini açýar. Gural görkezmesi hakykatdanam görkezilmänkä (ýagny shown.bs.tooltip
waka ýüze çykmazdan ozal) jaň edijä gaýdyp gelýär. Bu gurallar maslahatynyň “el bilen” başlamagy hasaplanýar. Nol uzynlykdaky atlar bilen gurallar hiç haçan görkezilmeýär.
tooltip.show()
gizle
Bir elementiň gural görkezmesini gizleýär. Gurallar maslahaty hakykatdanam gizlenmänkä (ýagny hidden.bs.tooltip
waka ýüze çykmazdan ozal) jaň edýän adama gaýdyp gelýär. Bu gurallar maslahatynyň “el bilen” başlamagy hasaplanýar.
tooltip.hide()
üýtgetmek
Bir elementiň gurallar maslahatyny üýtgedýär. Gurallar görkezmesi hakykatdanam görkezilmän ýa-da gizlenmänkä (ýagny waka shown.bs.tooltip
ýa-da hidden.bs.tooltip
waka ýüze çykmazdan ozal) jaň edýän adama gaýdyp gelýär. Bu gurallar maslahatynyň “el bilen” başlamagy hasaplanýar.
tooltip.toggle()
taşlaň
Bir elementiň gurallar maslahatyny gizleýär we ýok edýär (DOM elementindäki saklanan maglumatlary aýyrýar). Delegasiýany ulanýan gurallar (opsiýany ulanyp döredilýär ) selector
nesil trigger elementlerinde aýratyn ýok edilip bilinmez.
tooltip.dispose()
işletmek
Bir elementiň gural görkezmesini görkezmek ukybyny berýär. Gurallar adaty ýagdaýda işledilýär.
tooltip.enable()
öçürmek
Bir elementiň gural görkezmesiniň görkezilmegini aradan aýyrýar. Gurallar maslahaty diňe täzeden işledilen ýagdaýynda görkezilip bilner.
tooltip.disable()
açmak
Bir elementiň gural görkezmesiniň görkezilmegi ýa-da gizlenmegi mümkinçiligini üýtgedýär.
tooltip.toggleEnabled()
täzelen
Bir elementiň gurallar guralynyň ýagdaýyny täzeleýär.
tooltip.update()
GetInstance
DOM elementi bilen baglanyşykly gurallar meselesini almaga mümkinçilik berýän statiki usul
var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance
getOrCreateInstance
DOM elementi bilen baglanyşykly gurallar meselesini almaga ýa-da başlamadyk ýagdaýynda täzesini döretmäge mümkinçilik berýän statiki usul.
var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getOrCreateInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance
Wakalar
Çäräniň görnüşi | Düşündiriş |
---|---|
show.bs.tooltip |
show Bu waka mysal usuly çagyrylanda derrew ýanýar . |
shown.bs.tooltip |
Bu waka gural gurallary ulanyja görünen mahaly atylýar (CSS geçişleriniň tamamlanmagyna garaşýar). |
hide.bs.tooltip |
Bu waka hide mysal usuly çagyrylanda derrew atylýar. |
hidden.bs.tooltip |
Bu waka, gural görkezmesi ulanyjydan gizlenip gutarandan soň (CSS geçişleriniň tamamlanmagyna garaşar). |
inserted.bs.tooltip |
show.bs.tooltip Bu waka , gurallar şablony DOM-a goşulandan soň atylýar . |
var myTooltipEl = document.getElementById('myTooltip')
var tooltip = new bootstrap.Tooltip(myTooltipEl)
myTooltipEl.addEventListener('hidden.bs.tooltip', function () {
// do something...
})
tooltip.hide()