Source

قورال قوراللىرى

CSS3 ۋە JavaScript ئارقىلىق خاسلاشتۇرۇلغان Bootstrap قورال قوراللىرىنى CSS3 ئارقىلىق كارتون ۋە يەرلىك ماۋزۇ ساقلاشقا ئىشلىتىدىغان سانلىق مەلۇمات خاسلىقى قوشۇش ئۈچۈن ھۆججەت ۋە مىساللار.

ئومۇمىي چۈشەنچە

قورال قىستۇرمىسىنى ئىشلەتكەندە بىلىشكە تېگىشلىك ئىشلار:

  • قورال قوراللىرى ئورۇن بەلگىلەش ئۈچۈن 3-تەرەپ كۈتۈپخانىسى Popper.js غا تايىنىدۇ. Bootstrap.js دىن بۇرۇن popper.min.js نى ئۆز ئىچىگە ئېلىشىڭىز bootstrap.bundle.min.jsياكى bootstrap.bundle.jsقورال قوراللىرىنىڭ ئىشلىشى ئۈچۈن Popper.js نى ئۆز ئىچىگە ئالغان ئىشلىتىڭ.
  • ئەگەر JavaScript نى مەنبەدىن قۇرغان بولسىڭىز ، ئۇ تەلەپ قىلىدۇutil.js .
  • قورال قوراللىرى ئىقتىدار سەۋەبىدىن تاللىنىدۇ ، شۇڭا چوقۇم ئۆزىڭىز باشلىشىڭىز كېرەك .
  • نۆل ئۇزۇنلۇقتىكى ماۋزۇلار بار قوراللار ھەرگىز كۆرۈنمەيدۇ.
  • تېخىمۇ مۇرەككەپ زاپچاسلاردا مەسىلە پەيدا قىلىشتىن ساقلىنىشنى بەلگىلەڭ container: 'body'(بىزنىڭ كىرگۈزۈش گۇرۇپپىلىرىمىز ، كۇنۇپكا گۇرۇپپىلىرىمىز دېگەندەك).
  • يوشۇرۇن ئېلېمېنتلارنى قوزغىتىش قوراللىرى ئىشلىمەيدۇ.
  • قورال .disabledياكى disabledئېلېمېنتلار چوقۇم ئورالغان ئېلېمېنتتا قوزغىتىلىشى كېرەك.
  • كۆپ قۇرنى ئۆز ئىچىگە ئالغان ئۇلىنىشتىن قوزغالغاندا ، قورال كۆرسەتمىلىرى مەركەزلىك بولىدۇ. بۇ ھەرىكەتتىن ساقلىنىش ئۈچۈن s white-space: nowrap;نى ئىشلىتىڭ .<a>
  • ماس كېلىدىغان ئېلېمېنتلار DOM دىن چىقىرىۋېتىلىشتىن بۇرۇن قورال قوراللىرى چوقۇم يوشۇرۇلۇشى كېرەك.

ھەممىسىگە ئېرىشتىڭىزمۇ؟ قالتىس ، ئۇلارنىڭ بەزى مىساللار بىلەن قانداق ئىشلەيدىغانلىقىنى كۆرۈپ باقايلى.

مىسال: ھەممە يەردە قورال قوراللىرىنى قوزغىتىڭ

بىر بەتتىكى بارلىق قورال قوراللىرىنى باشلاشنىڭ بىر ئۇسۇلى ، ئۇلارنىڭ data-toggleخاسلىقى بويىچە تاللاش:

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

مىساللار

تۆۋەندىكى ئۇلىنىشلارنى بېسىپ قورال قوراللىرىنى كۆرۈڭ:

تار ئىشتان كېيىنكى دەرىجىلىك keffiyeh بەلكىم سىز ئۇلارنى ئاڭلاپ باقمىغان بولۇشىڭىز مۇمكىن. سۈرەت پونكىتى ساقال خام دېنىم خەت ساندۇقى گۆشسىز خەۋەرچى سومكىسى توختاپ قالدى. دېھقانچىلىق مەيدانىدىن ئۈستەلگە ئولتۇرىدىغان سەيتان ، mcsweeney نىڭ مۇقىم سىجىللىقىدىكى 8 بىتلىق ئامېرىكا كىيىم-كېچەكلىرىنىڭ تېررى رىچاردسون ۋىنىل چامبراي بار . ساقاللىرى توختاپ قالدى ، كارتىلار بانخ مى لومو گۈلدۈرماما. Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleangan vegan chambray. ھەقىقەتەن كىشىنى ھەيران قالدۇرىدىغان ھۈنەرۋەن ھەر قانداق ئاچقۇچ ، مەنزىرىلىك دېھقانچىلىق مەيدانىدىن ئۈستەل بانكىسى Austin twitter بىر تەرەپ قىلغان ھەقسىز كرېدىت خام دېنى يەككە مەنبەلىك قەھۋە ۋىرۇسى.

تۆۋەندىكى كۇنۇپكىلارنى بېسىپ تۇرۇپ ، ئۈستى ، ئوڭ ، ئاستى ۋە سولدىن ئىبارەت تۆت قورال كۆرسەتمىسىنى كۆرۈڭ.

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

خاس HTML قوشۇلغان:

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

ئىشلىتىش

قورال قورال قىستۇرمىسى ئېھتىياجغا ئاساسەن مەزمۇن ۋە بەلگە ھاسىل قىلىدۇ ، سۈكۈتتىكى ھالەتتە قوزغىتىش قوراللىرى قوزغاتقۇچ ئېلېمېنتىدىن كېيىن.

قورال قورالنى JavaScript ئارقىلىق قوزغىتىڭ:

$('#example').tooltip(options)
ئېشىپ كېتىش autoۋەscroll

overflow: autoقورال قاچىسى ئورنى ئاتا-ئانىلار قاچىسى بىزدە ياكى overflow: scrollبىزگە ئوخشاش بولغاندا ئاپتوماتىك ئۆزگەرتىشكە ئۇرۇنىدۇ .table-responsive، ئەمما يەنىلا ئەسلىدىكى ئورۇننىڭ ئورنىنى ساقلايدۇ. ھەل قىلىش ئۈچۈن ، boundaryكۆڭۈلدىكى قىممەتتىن باشقا تاللاشنى تاللاڭ 'scrollParent'، مەسىلەن 'window':

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

Markup

قورال كۆرسەتكۈچىگە لازىملىق بەلگە پەقەت بىر dataخاسلىق titleبولۇپ ، HTML ئېلېمېنتىدا قورال قوراللىرى بولۇشنى خالايسىز. قورال قورالنىڭ ھاسىل قىلىنغان بەلگىسى بىر قەدەر ئاددىي ، گەرچە ئۇ ئورۇن تەلەپ قىلسىمۇ (سۈكۈتتىكى ھالەتتە topقىستۇرما تەرىپىدىن بەلگىلىنىدۇ).

قورال قوراللىرىنى ياساش كۇنۇپكا تاختىسى ۋە ياردەمچى تېخنىكا ئىشلەتكۈچىلەر ئۈچۈن خىزمەت قىلىدۇ

سىز پەقەت HTML ئېلېمېنتلىرىغا ئەنئەنىۋى كۇنۇپكا تاختىسى فوكۇسلانغان ۋە ئۆز-ئارا تەسىر كۆرسىتىدىغان (ئۇلىنىش ياكى شەكىل كونترول دېگەندەك) قورال قوراللىرىنى قوشۇشىڭىز كېرەك. خاسلىقنى قوشۇش ئارقىلىق خالىغان HTML ئېلېمېنتلىرى (مەسىلەن <span>) نى فوكۇس توغرىلىغىلى بولسىمۇ tabindex="0"، ئەمما بۇ كۇنۇپكا تاختىسى ئىشلەتكۈچىلەر ئۈچۈن ئۆز-ئارا تەسىر قىلمايدىغان ئېلېمېنتلارغا ئادەمنى بىزار قىلىدىغان ۋە قايمۇقتۇرىدىغان بەتكۈچ توختايدۇ. ئۇنىڭدىن باشقا ، كۆپىنچە ياردەمچى تېخنىكىلار ھازىر بۇ ئەھۋالدا قورال كۆرسەتكۈچىنى ئېلان قىلمايدۇ.

بۇنىڭدىن باشقا ، قورال قوراللىرىڭىزنىڭ قوزغاتقۇچىسىغىلا تايانماڭ hover، چۈنكى بۇ قورال قوراللىرىڭىزنى كۇنۇپكا تاختىسى ئىشلەتكۈچىلەر ئۈچۈن قوزغىتالمايدۇ.

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

چەكلەنگەن ئېلېمېنتلار

خاسلىقى بار ئېلېمېنتلار disabledئۆز-ئارا تەسىر كۆرسىتەلمەيدۇ ، يەنى ئىشلەتكۈچىلەر فوكۇس توغرىلىيالمايدۇ ، يۆتكىۋېتەلمەيدۇ ياكى ئۇلارنى چېكىپ قورال كۆرسەتكۈچى (ياكى سەكرىمە) قوزغىتالمايدۇ. خىزمەت ئۇسۇلى بولۇش سۈپىتىڭىز بىلەن ، قورال قورالنى ئورالمىدىن قوزغاتماقچى <div>ياكى <span>ئەڭ ياخشىسى كۇنۇپكا تاختىسىنى فوكۇس توغرىلاپ ئىشلىتىپ ، چەكلەنگەن ئېلېمېنتنى tabindex="0"قاپلىۋەتمەكچى بولىسىز.pointer-events

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

تاللانما

تاللانمىلارنى سانلىق مەلۇمات خاسلىقى ياكى JavaScript ئارقىلىق يەتكۈزگىلى بولىدۇ. سانلىق مەلۇمات خاسلىقى ئۈچۈن ، تاللاش نامىغا data-ئوخشاش data-animation="".

ئىسمى تىپ سۈكۈتتىكى چۈشەندۈرۈش
animation boolean true قورال قورالغا CSS سۇس ئۆتۈشنى ئىشلىتىڭ
قاچا string | element | false false

قورال كۆرسەتكۈچىنى مەلۇم ئېلېمېنتقا قوشىدۇ. مىسال : container: 'body'. بۇ تاللاش ئالاھىدە قورال بولۇپ ، ئۇ قورال قوراللىرىنى ھۆججەتنىڭ ئېقىمىغا قوزغاتقۇچ ئېلېمېنتىغا يېقىن ئورۇنغا قويالايسىز - بۇ كۆزنەكنىڭ چوڭ-كىچىكلىكىدە قورال قوراللىرىنىڭ قوزغاتقۇچ ئېلېمېنتىدىن يىراقلاپ كېتىشىنىڭ ئالدىنى ئالىدۇ.

كېچىكىش سان | ئوبيېكت 0

قورال كۆرسەتكۈچى (ms) نى كۆرسىتىش ۋە يوشۇرۇش - قولدا قوزغىتىش تىپىغا ماس كەلمەيدۇ

ئەگەر بىر سان تەمىنلەنسە ، يوشۇرۇش / كۆرسىتىشكە كېچىكىش قوللىنىلىدۇ

ئوبيېكت قۇرۇلمىسى:delay: { "show": 500, "hide": 100 }

html boolean false

قورال قورالىدا HTML غا يول قويۇڭ.

ئەگەر راست بولسا ، قورال كۆرسەتكۈچىدىكى HTML خەتكۈچلىرى titleقورال كۆرسەتكۈچىدە كۆرسىتىلىدۇ. ئەگەر يالغان بولسا ، jQuery نىڭ textئۇسۇلى DOM غا مەزمۇن قىستۇرۇشقا ئىشلىتىلىدۇ.

ئەگەر XSS ھۇجۇمىدىن ئەنسىرىسىڭىز تېكىست ئىشلىتىڭ.

ئورۇنلاشتۇرۇش string | function 'top'

قورال قورالنى قانداق ئورۇنلاشتۇرۇش - ئاپتوماتىك | top | ئاستى | left | توغرا. ئېنىقلانغاندىن كېيىن ، ئۇ قورال قورالنى ھەرىكەتچان ھالدا قايتىدىن ئۆزگەرتىدۇ
.auto

ئورۇنلاشتۇرۇشنى بەلگىلەشتە فۇنكسىيە ئىشلىتىلگەندە ، ئۇ قورال قورال DOM تۈگۈنى بىلەن بىرىنچى تالاش-تارتىش ، قوزغىتىش ئېلېمېنتى DOM تۈگۈنى ئىككىنچى دەپ ئاتىلىدۇ. thisمەزمۇن قورال قوراللىرى مىسالىغا تەڭشەلدى .

تاللىغۇچ string | false false ئەگەر تاللىغۇچ تەمىنلەنسە ، قورال كۆرسەتكۈچ ئوبيېكتى بەلگىلەنگەن نىشانغا تاپشۇرۇلىدۇ. ئەمەلىيەتتە ، بۇ ھەرىكەتچان HTML مەزمۇنىنى قوزغىتىش پروگراممىسى قوشۇشقا ئىشلىتىلىدۇ. بۇنى ۋە مەزمۇنلۇق مىسالنى كۆرۈڭ .
قېلىپ string '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'

قورال قوراللىرىنى قۇرغاندا ئىشلىتىدىغان HTML نى ئاساس قىلىڭ.

قورال قوراللىرى titleئىچىگە ئوكۇل قىلىنىدۇ .tooltip-inner.

.arrowقورال قورالنىڭ يا ئوققا ئايلىنىدۇ.

سىرتقى ئورالما ئېلېمېنتىنىڭ .tooltipسىنىپى بولۇشى كېرەك role="tooltip".

ماۋزۇ string | element | function ''

titleئەگەر خاسلىق بولمىسا سۈكۈتتىكى تېما قىممىتى .

thisئەگەر بىر ئىقتىدار بېرىلگەن بولسا ، ئۇ قورال كۆرسەتكۈچى ئۇلانغان ئېلېمېنتقا پايدىلىنىش قىممىتى بىلەن چاقىرىلىدۇ .

trigger string 'hover focus'

قورال قوراللىرى قانداق قوزغىتىلىدۇ - نى بېسىڭ hover | فوكۇس | manual. سىز بىر نەچچە قوزغاتقۇچتىن ئۆتۈپ كېتىشىڭىز مۇمكىن. ئۇلارنى بوشلۇق بىلەن ئايرىڭ.

'manual'بۇ قورال قورالنىڭ پروگرامما ۋە ئۇسۇللار .tooltip('show')ئارقىلىق پروگرامما خاراكتېرلىك قوزغىتىلىدىغانلىقىنى كۆرسىتىدۇ. بۇ قىممەتنى باشقا قوزغاتقۇچ بىلەن بىرلەشتۈرگىلى بولمايدۇ..tooltip('hide').tooltip('toggle')

'hover'ئۆزلۈكىدىن كۇنۇپكا تاختىسى ئارقىلىق قوزغىتىشقا بولمايدىغان قورال قوراللىرىنى كەلتۈرۈپ چىقىرىدۇ ، پەقەت كۇنۇپكا تاختىسى ئىشلەتكۈچىلەرگە ئوخشاش ئۇچۇرلارنى يەتكۈزۈشنىڭ باشقا ئۇسۇللىرى بولغاندىلا ئىشلىتىش كېرەك.

offset سان | string 0 نىشانغا سېلىشتۇرغاندا قورال قوراللىرىنىڭ تولۇقلىنىشى. تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن Popper.js نىڭ offset ھۆججىتىنى كۆرۈڭ .
fallbackPlacement string | سانلار گۇرپىسى 'flip' Popper نىڭ قايسى ئورۇنغا قايتىدىغانلىقىنى بەلگىلەشكە يول قويۇڭ. تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن Popper.js نىڭ ھەرىكەت ھۆججىتىنى كۆرۈڭ
چېگرا string | ئېلېمېنت 'scrollParent' قورال قورالنىڭ چەكتىن ئېشىپ كېتىش چەكلىمىسى. 'viewport'، ياكى HTMLElement پايدىلىنىش قىممىتى (پەقەت JavaScript) نىڭ 'window'قىممىتىنى قوبۇل قىلىدۇ . 'scrollParent'تېخىمۇ كۆپ ئۇچۇرغا ئېرىشمەكچى بولسىڭىز Popper.js نىڭ ئالدىنى ئېلىش ئېقىمى ھۆججىتىنى كۆرۈڭ .

يەككە قورال قوراللىرىنىڭ سانلىق مەلۇمات خاسلىقى

ئايرىم قورال قوراللىرىنىڭ تاللانمىلىرىنى يۇقىرىدا چۈشەندۈرۈلگەندەك سانلىق مەلۇمات خاسلىقىنى ئىشلىتىش ئارقىلىق بەلگىلىگىلى بولىدۇ.

Methods

ماس قەدەمسىز ئۇسۇل ۋە ئۆتكۈنچى

بارلىق API ئۇسۇللىرى ماس قەدەمسىز بولۇپ ، ئۆتكۈنچى باسقۇچنى باشلايدۇ . ئۇلار بۇرۇلۇش باشلانغان ھامان ، ئۇ ئاخىرلاشماي تۇرۇپلا تېلېفون قىلغۇچىغا قايتىپ كېلىدۇ . بۇنىڭدىن باشقا ، ئۆتكۈنچى زاپچاسنى چاقىرىش ئۇسۇلىغا سەل قارىلىدۇ .

تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن JavaScript ھۆججىتىمىزنى كۆرۈڭ.

$().tooltip(options)

قورال توپلىغۇچنى ئېلېمېنتلار توپلىمىغا باغلايدۇ.

.tooltip('show')

بىر ئېلېمېنتنىڭ قورال قوراللىرىنى ئاشكارىلايدۇ. قورال كۆرسەتكۈچى ئەمەلىيەتتە كۆرسىتىلىشتىن بۇرۇن (يەنى ۋەقە يۈز بېرىشتىن بۇرۇن) دەۋەتچىگە قايتىدۇ . shown.bs.tooltipبۇ قورال قورالنىڭ «قولدا قوزغىتىش» دەپ قارىلىدۇ. نۆل ئۇزۇنلۇقتىكى ماۋزۇلار بار قوراللار ھەرگىز كۆرۈنمەيدۇ.

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

.tooltip('hide')

ئېلېمېنتنىڭ قورال قوراللىرىنى يوشۇرىدۇ. قورال كۆرسەتكۈچى ئەمەلىيەتتە يوشۇرۇلۇشتىن بۇرۇن (يەنى ۋەقە يۈز بېرىشتىن بۇرۇن) دەۋەتچىگە قايتىدۇ . hidden.bs.tooltipبۇ قورال قورالنىڭ «قولدا قوزغىتىش» دەپ قارىلىدۇ.

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

.tooltip('toggle')

ئېلېمېنتنىڭ قورال قوراللىرىنى بىر تەرەپ قىلىدۇ. قورال كۆرسەتكۈچى ئەمەلىيەتتە كۆرسىتىش ياكى يوشۇرۇشتىن بۇرۇن (يەنى ۋەقە ياكى ھادىسە يۈز بېرىشتىن بۇرۇن) دەۋەتچىگە قايتىدۇ . بۇ قورال قورالنىڭ «قولدا قوزغىتىش» دەپ قارىلىدۇ.shown.bs.tooltiphidden.bs.tooltip

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

.tooltip('dispose')

ئېلېمېنتنىڭ قورال قوراللىرىنى يوشۇرىدۇ ۋە يوقىتىدۇ. ۋەكىللەر ئۆمىكىنى ئىشلىتىدىغان قوراللار ( تاللاش ئارقىلىقselector ياسالغان ) ئەۋلاد قوزغاتقۇچ ئېلېمېنتلىرىدا ئايرىم بۇزۇلمايدۇ.

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

.tooltip('enable')

ئېلېمېنتنىڭ قورال كۆرسەتكۈچىنى كۆرسىتىش ئىقتىدارىنى بېرىدۇ. قورال قوراللىرى سۈكۈتتىكى ھالەتتە قوزغىتىلغان.

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

.tooltip('disable')

ئېلېمېنتنىڭ قورال كۆرسەتكۈچىنى كۆرسىتىش ئىقتىدارىنى يوقىتىدۇ. قورال قورالنى قايتا قوزغىتىلغاندىلا كۆرسەتكىلى بولىدۇ.

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

.tooltip('toggleEnabled')

ئېلېمېنتنىڭ قورال كۆرسەتكۈچىنى كۆرسىتىش ياكى يوشۇرۇش ئىقتىدارىنى ئۆزگەرتىدۇ.

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

.tooltip('update')

ئېلېمېنتنىڭ قورال قوراللىرىنىڭ ئورنىنى يېڭىلايدۇ.

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

Events

پائالىيەت تىپى چۈشەندۈرۈش
show.bs.tooltip showمىسال ئۇسۇلى چاقىرىلغاندا بۇ ھادىسە دەرھال ئېتىلىدۇ .
shown.bs.tooltip بۇ قورال قورال كۆرسەتكۈچى ئىشلەتكۈچىگە كۆرۈنگەندە ئىشتىن بوشىتىلىدۇ (CSS ئۆتكۈنچى باسقۇچنىڭ تاماملىنىشىنى ساقلايدۇ).
hide.bs.tooltip hideئۈلگە ئۇسۇلى چاقىرىلغاندا بۇ پائالىيەت دەرھال ئېتىۋېتىلىدۇ .
hidden.bs.tooltip بۇ ھادىسە قورال قوراللىرى ئىشلەتكۈچىگە يوشۇرۇنغاندىن كېيىن چىقىرىلىدۇ (CSS ئۆتكۈنچى باسقۇچنىڭ تاماملىنىشىنى ساقلايدۇ).
inserted.bs.tooltip بۇ پائالىيەت پائالىيەتتىن كېيىن show.bs.tooltipDOM غا قورال كۆرسەتكۈچى ئەندىزىسى قوشۇلغاندىن كېيىن ئېتىلىدۇ.
$('#myTooltip').on('hidden.bs.tooltip', function () {
  // do something…
})