in English

Popovers

Dogfennaeth ac enghreifftiau ar gyfer ychwanegu popovers Bootstrap, fel y rhai a geir yn iOS, at unrhyw elfen ar eich gwefan.

Trosolwg

Pethau i'w gwybod wrth ddefnyddio'r ategyn popover:

  • Mae Popovers yn dibynnu ar Popper llyfrgell 3ydd parti ar gyfer lleoli. Rhaid i chi gynnwys popper.min.js cyn bootstrap.js neu use bootstrap.bundle.min.js/ bootstrap.bundle.jssy'n cynnwys Popper er mwyn i popovers weithio!
  • Mae Popovers angen yr ategyn tooltip fel dibyniaeth.
  • Os ydych chi'n adeiladu ein JavaScript o'r ffynhonnell, mae angenutil.js .
  • Mae popovers yn optio i mewn am resymau perfformiad, felly mae'n rhaid i chi eu cychwyn eich hun .
  • Ni fydd sero-hyd titlea contentgwerthoedd byth yn dangos popover.
  • Nodwch container: 'body'er mwyn osgoi problemau rendro mewn cydrannau mwy cymhleth (fel ein grwpiau mewnbwn, grwpiau botwm, ac ati).
  • Ni fydd sbarduno popovers ar elfennau cudd yn gweithio.
  • Rhaid sbarduno popovers ar gyfer .disabledneu disabledelfennau ar elfen lapio.
  • Pan gânt eu hysgogi o angorau sy'n lapio ar draws llinellau lluosog, bydd popovers yn cael eu canoli rhwng lled cyffredinol yr angorau. Defnyddiwch .text-nowrapar eich <a>s i osgoi'r ymddygiad hwn.
  • Rhaid cuddio popovers cyn i'w elfennau cyfatebol gael eu tynnu o'r DOM.
  • Gellir sbarduno popovers diolch i elfen y tu mewn i DOM cysgodol.
Yn ddiofyn, mae'r gydran hon yn defnyddio'r glanweithydd cynnwys adeiledig, sy'n dileu unrhyw elfennau HTML nad ydynt yn cael eu caniatáu yn benodol. Gweler yr adran glanweithydd yn ein dogfennaeth JavaScript am ragor o fanylion.
Mae effaith animeiddio'r gydran hon yn dibynnu ar prefers-reduced-motionymholiad y cyfryngau. Gweler adran cynnig gostyngol ein dogfennaeth hygyrchedd .

Daliwch ati i ddarllen i weld sut mae popovers yn gweithio gyda rhai enghreifftiau.

Enghraifft: Galluogi popovers ym mhobman

Un ffordd o gychwyn pob popover ar dudalen fyddai eu dewis yn ôl eu data-togglepriodoledd:

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

Enghraifft: Defnyddio'r containeropsiwn

Pan fydd gennych rai arddulliau ar elfen rhiant sy'n ymyrryd â popover, byddwch am nodi arferiad containerfel bod HTML y popover yn ymddangos o fewn yr elfen honno yn lle hynny.

$(function () {
  $('.example-popover').popover({
    container: 'body'
  })
})

Enghraifft

<button type="button" class="btn btn-lg btn-danger" data-toggle="popover" title="Popover title" data-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>

Pedwar cyfeiriad

Mae pedwar opsiwn ar gael: aliniad uchaf, dde, gwaelod a chwith.

<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" data-content="Top popover">
  Popover on top
</button>
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="right" data-content="Right popover">
  Popover on right
</button>
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="bottom" data-content="Bottom popover">
  Popover on bottom
</button>
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="left" data-content="Left popover">
  Popover on left
</button>

Diystyru ar y clic nesaf

Defnyddiwch y focussbardun i ddiystyru popovers ar glic nesaf y defnyddiwr ar elfen wahanol i'r elfen togl.

Mae angen marcio penodol ar gyfer diswyddo-ar-glic nesaf

Ar gyfer ymddygiad traws-borwr a thraws-lwyfan priodol, rhaid i chi ddefnyddio'r <a>tag, nid y <button>tag, a rhaid i chi hefyd gynnwys tabindexpriodoledd.

<a tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
$('.popover-dismiss').popover({
  trigger: 'focus'
})

Elfennau anabl

Nid yw elfennau gyda'r disabledpriodoledd yn rhyngweithiol, sy'n golygu na all defnyddwyr hofran na chlicio arnynt i sbarduno popover (neu gyngor). Fel ateb, byddwch chi eisiau sbarduno'r popover o ddeunydd lapio <div>neu <span>a diystyru'r pointer-eventselfen anabl.

Ar gyfer sbardunau popover anabl, efallai y byddai'n well gennych hefyd data-trigger="hover"fel bod y popover yn ymddangos fel adborth gweledol uniongyrchol i'ch defnyddwyr oherwydd efallai na fyddant yn disgwyl clicio ar elfen anabl.

<span class="d-inline-block" data-toggle="popover" data-content="Disabled popover">
  <button class="btn btn-primary" style="pointer-events: none;" type="button" disabled>Disabled button</button>
</span>

Defnydd

Galluogi popovers trwy JavaScript:

$('#example').popover(options)
Cyflymiad GPU

Weithiau mae popovers yn ymddangos yn aneglur ar ddyfeisiau Windows 10 oherwydd cyflymiad GPU a DPI system wedi'i addasu. Y datrysiad ar gyfer hyn yn v4 yw analluogi cyflymiad GPU yn ôl yr angen ar eich popovers.

Atgyweiriad a awgrymir:

Popper.Defaults.modifiers.computeStyle.gpuAcceleration = !(window.devicePixelRatio < 1.5 && /Win/.test(navigator.platform))

Gwneud i popovers weithio i ddefnyddwyr bysellfwrdd a thechnoleg gynorthwyol

Er mwyn galluogi defnyddwyr bysellfwrdd i actifadu eich popovers, dim ond at elfennau HTML sy'n draddodiadol yn canolbwyntio ar fysellfyrddau ac yn rhyngweithiol y dylech eu hychwanegu (fel dolenni neu reolaethau ffurf). <span>Er y gellir gwneud elfennau HTML mympwyol (fel s) yn ffocws trwy ychwanegu'r tabindex="0"priodoledd, bydd hyn yn ychwanegu stopiau tab a allai fod yn annifyr a dryslyd ar elfennau nad ydynt yn rhyngweithiol ar gyfer defnyddwyr bysellfwrdd, ac ar hyn o bryd nid yw'r rhan fwyaf o dechnolegau cynorthwyol yn cyhoeddi cynnwys y popover yn y sefyllfa hon . Yn ogystal, peidiwch â dibynnu'n llwyr arno hoverfel sbardun eich popovers, gan y bydd hyn yn eu gwneud yn amhosibl eu sbarduno i ddefnyddwyr bysellfwrdd.

Er y gallwch fewnosod HTML cyfoethog, strwythuredig mewn popovers gyda'r htmlopsiwn, rydym yn argymell yn gryf eich bod yn osgoi ychwanegu gormod o gynnwys. Y ffordd y mae popovers yn gweithio ar hyn o bryd yw bod eu cynnwys, ar ôl ei arddangos, yn gysylltiedig â'r elfen sbardun gyda'r aria-describedbypriodoledd. O ganlyniad, bydd holl gynnwys y popover yn cael ei gyhoeddi i ddefnyddwyr technoleg gynorthwyol fel un ffrwd hir, ddi-dor.

Yn ogystal, er ei bod yn bosibl cynnwys rheolyddion rhyngweithiol hefyd (fel elfennau ffurf neu ddolenni) yn eich popover (trwy ychwanegu'r elfennau hyn at y whiteListpriodoleddau a'r tagiau a ganiateir), byddwch yn ymwybodol nad yw'r popover yn rheoli trefn ffocws bysellfwrdd ar hyn o bryd. Pan fydd defnyddiwr bysellfwrdd yn agor popover, mae'r ffocws yn parhau ar yr elfen sbarduno, a chan nad yw'r popover fel arfer yn dilyn y sbardun yn strwythur y ddogfen ar unwaith, nid oes unrhyw sicrwydd symud ymlaen / pwysoTAByn symud defnyddiwr bysellfwrdd i'r popover ei hun. Yn fyr, mae ychwanegu rheolyddion rhyngweithiol at popover yn debygol o wneud y rheolyddion hyn yn anghyraeddadwy/annefnyddiadwy i ddefnyddwyr bysellfwrdd a defnyddwyr technolegau cynorthwyol, neu o leiaf yn creu trefn ffocws cyffredinol afresymegol. Yn yr achosion hyn, ystyriwch ddefnyddio deialog moddol yn lle hynny.

Opsiynau

Gellir trosglwyddo opsiynau trwy briodoleddau data neu JavaScript. Ar gyfer priodoleddau data, atodwch enw'r opsiwn i data-, fel yn data-animation="".

Sylwch, am resymau diogelwch , ni ellir darparu'r sanitize, sanitizeFnac opsiynau gan ddefnyddio priodoleddau data.whiteList
Enw Math Diofyn Disgrifiad
animeiddiad boolaidd gwir Cymhwyso trawsnewidiad pylu CSS i'r popover
cynhwysydd llinyn | elfen | ffug ffug

Yn atodi'r popover i elfen benodol. Enghraifft: container: 'body'. Mae'r opsiwn hwn yn arbennig o ddefnyddiol gan ei fod yn caniatáu ichi osod y popover yn llif y ddogfen ger yr elfen sbarduno - a fydd yn atal y popover rhag arnofio i ffwrdd o'r elfen sbarduno yn ystod newid maint ffenestr.

cynnwys llinyn | elfen | swyddogaeth ''

Gwerth cynnwys diofyn os data-contentnad yw'r briodwedd yn bresennol.

Os rhoddir ffwythiant, fe'i gelwir gyda'i thisset gyfeirnod i'r elfen y mae'r popover ynghlwm wrthi.

oedi rhif | gwrthrych 0

Oedi wrth ddangos a chuddio'r popover (ms) - nid yw'n berthnasol i'r math sbardun â llaw

Os bydd rhif yn cael ei gyflenwi, bydd oedi yn cael ei gymhwyso i'r ddwy guddfan/sioe

Strwythur gwrthrych yw:delay: { "show": 500, "hide": 100 }

html boolaidd ffug Mewnosod HTML yn y popover. Os yw'n ffug, textbydd dull jQuery yn cael ei ddefnyddio i fewnosod cynnwys yn y DOM. Defnyddiwch destun os ydych chi'n poeni am ymosodiadau XSS.
lleoliad llinyn | swyddogaeth 'iawn'

Sut i leoli'r popover - auto | brig | gwaelod | chwith | iawn.
Pan gaiff autoei nodi, bydd yn ailgyfeirio'r popover yn ddeinamig.

Pan ddefnyddir swyddogaeth i benderfynu ar y lleoliad, fe'i gelwir gyda'r nod DOM popover fel ei ddadl gyntaf a'r elfen sbarduno nod DOM fel ei ail. Mae'r thiscyd-destun wedi'i osod i'r enghraifft popover.

detholwr llinyn | ffug ffug Os darperir dewisydd, bydd gwrthrychau popover yn cael eu dirprwyo i'r targedau penodedig. Yn ymarferol, defnyddir hwn i alluogi cynnwys HTML deinamig i ychwanegu popovers. Gweler hyn ac enghraifft llawn gwybodaeth .
templed llinyn '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'

Sylfaen HTML i'w ddefnyddio wrth greu'r popover.

Bydd y popover's titleyn cael ei chwistrellu i mewn i'r .popover-header.

Bydd y popover's contentyn cael ei chwistrellu i mewn i'r .popover-body.

.arrowbydd yn dod yn saeth y popover yn.

Dylai'r elfen lapio allanol fod â'r .popoverdosbarth.

teitl llinyn | elfen | swyddogaeth ''

Gwerth teitl diofyn os titlenad yw'r briodwedd yn bresennol.

Os rhoddir ffwythiant, fe'i gelwir gyda'i thisset gyfeirnod i'r elfen y mae'r popover ynghlwm wrthi.

sbardun llinyn 'cliciwch' Sut mae popover yn cael ei sbarduno - cliciwch | hofran | ffocws | llaw. Efallai y byddwch yn pasio sbardunau lluosog; eu gwahanu â gofod. manualni ellir ei gyfuno ag unrhyw sbardun arall.
gwrthbwyso rhif | llinyn 0 Gwrthbwyso'r popover o'i gymharu â'i darged. Am ragor o wybodaeth cyfeiriwch at ddogfennau gwrthbwyso Popper .
Lleoliad wrth gefn llinyn | arae 'fflip' Caniatewch i nodi pa safle y bydd Popper yn ei ddefnyddio wrth gefn. Am ragor o wybodaeth cyfeiriwch at ddogfennau ymddygiad Popper
arferDosbarth llinyn | swyddogaeth ''

Ychwanegu dosbarthiadau at y popover pan fydd yn cael ei ddangos. Sylwch y bydd y dosbarthiadau hyn yn cael eu hychwanegu yn ychwanegol at unrhyw ddosbarthiadau a nodir yn y templed. I ychwanegu dosbarthiadau lluosog, gwahanwch nhw gyda bylchau: 'a b'.

Gallwch hefyd basio swyddogaeth a ddylai ddychwelyd un llinyn yn cynnwys enwau dosbarth ychwanegol.

ffin llinyn | elfen 'Sgrolio Rhiant' Ffin cyfyngiad gorlif y popover. Yn derbyn gwerthoedd 'viewport', 'window', 'scrollParent', neu gyfeirnod HTMLElement (JavaScript yn unig). I gael rhagor o wybodaeth, cyfeiriwch at ddogfennau preventOverflow Popper .
glanweithdra boolaidd gwir Galluogi neu analluogi'r glanweithdra. Os caiff ei actifadu 'template', 'content'a 'title'bydd opsiynau'n cael eu diheintio. Gweler yr adran glanweithydd yn ein dogfennaeth JavaScript .
gwynRhestr gwrthrych Gwerth diofyn Gwrthrych sy'n cynnwys priodoleddau a thagiau a ganiateir
glanweithdraFn null | swyddogaeth null Yma gallwch gyflenwi eich swyddogaeth glanweithdra eich hun. Gall hyn fod yn ddefnyddiol os yw'n well gennych ddefnyddio llyfrgell bwrpasol i wneud glanweithdra.
popperConfig null | gwrthrych null I newid ffurfweddiad Popper rhagosodedig Bootstrap, gweler cyfluniad Popper

Priodoleddau data ar gyfer popovers unigol

Fel arall, gellir pennu opsiynau ar gyfer popovers unigol trwy ddefnyddio priodoleddau data, fel yr eglurir uchod.

Dulliau

Dulliau a thrawsnewidiadau anghydamserol

Mae pob dull API yn asyncronaidd ac yn dechrau cyfnod pontio . Maen nhw'n dychwelyd at y galwr cyn gynted ag y bydd y cyfnod pontio wedi dechrau ond cyn iddo ddod i ben . Yn ogystal, bydd galwad dull ar gydran trawsnewid yn cael ei anwybyddu .

Gweler ein dogfennaeth JavaScript am ragor o wybodaeth .

$().popover(options)

Yn cychwyn popovers ar gyfer casgliad elfennau.

.popover('show')

Yn datgelu popover elfen. Yn dychwelyd i'r galwr cyn i'r popover gael ei ddangos (hy cyn i'r shown.bs.popoverdigwyddiad ddigwydd). Mae hwn yn cael ei ystyried yn sbardun “â llaw” o'r popover. Nid yw popovers y mae eu teitl a'u cynnwys o hyd sero byth yn cael eu harddangos.

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

.popover('hide')

Yn cuddio popover elfen. Yn dychwelyd i'r galwr cyn i'r popover gael ei guddio (hy cyn i'r hidden.bs.popoverdigwyddiad ddigwydd). Mae hwn yn cael ei ystyried yn sbardun “â llaw” o'r popover.

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

.popover('toggle')

Toglo popover elfen. Yn dychwelyd i'r galwr cyn i'r popover gael ei ddangos neu ei guddio (hy cyn i'r digwyddiad shown.bs.popoverneu'r hidden.bs.popoverdigwyddiad ddigwydd). Mae hwn yn cael ei ystyried yn sbardun “â llaw” o'r popover.

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

.popover('dispose')

Yn cuddio ac yn dinistrio popover elfen. Ni all popovers sy'n defnyddio dirprwyo (sy'n cael eu creu gan ddefnyddio'r opsiwnselector ) gael eu dinistrio'n unigol ar elfennau sbardun disgynyddion .

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

.popover('enable')

Yn rhoi'r gallu i popover elfen gael ei ddangos. Mae popovers yn cael eu galluogi yn ddiofyn.

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

.popover('disable')

Yn dileu'r gallu i ddangos popover elfen. Dim ond os caiff ei ail-alluogi y bydd y popover yn gallu cael ei ddangos.

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

.popover('toggleEnabled')

Toglo'r gallu i popover elfen gael ei ddangos neu ei guddio.

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

.popover('update')

Yn diweddaru lleoliad popover elfen.

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

Digwyddiadau

Math o Ddigwyddiad Disgrifiad
sioe.bs.popover Mae'r digwyddiad hwn yn tanio ar unwaith pan showelwir y dull enghraifft.
dangos.bs.popover Mae'r digwyddiad hwn yn cael ei danio pan fydd y popover wedi'i wneud yn weladwy i'r defnyddiwr (bydd yn aros i'r trawsnewidiadau CSS gael eu cwblhau).
cuddio.bs.popover Mae'r digwyddiad hwn yn cael ei danio ar unwaith pan fydd y hidedull enghraifft wedi'i alw.
cudd.bs.popover Mae'r digwyddiad hwn yn cael ei danio pan fydd y popover wedi gorffen cael ei guddio rhag y defnyddiwr (bydd yn aros i'r trawsnewidiadau CSS gael eu cwblhau).
mewnosod.bs.popover Mae'r digwyddiad hwn yn cael ei danio ar ôl y show.bs.popoverdigwyddiad pan fydd y templed popover wedi'i ychwanegu at y DOM.
$('#myPopover').on('hidden.bs.popover', function () {
  // do something...
})