រំលងទៅមាតិកាសំខាន់ រំលងទៅការរុករកឯកសារ
Check
in English

ព័ត៌មានជំនួយ

ឯកសារ និងឧទាហរណ៍សម្រាប់ការបន្ថែមព័ត៌មានជំនួយ Bootstrap ផ្ទាល់ខ្លួនជាមួយ CSS និង JavaScript ដោយប្រើ CSS3 សម្រាប់ចលនា និង data-bs-attributes សម្រាប់ការផ្ទុកចំណងជើងក្នុងតំបន់។

ទិដ្ឋភាពទូទៅ

អ្វីដែលត្រូវដឹងនៅពេលប្រើកម្មវិធីជំនួយជំនួយ៖

  • ព័ត៌មានជំនួយពឹងផ្អែកលើបណ្ណាល័យភាគីទីបី Popper សម្រាប់ការកំណត់ទីតាំង។ អ្នកត្រូវតែបញ្ចូល popper.min.js មុន bootstrap.jsឬប្រើមួយ bootstrap.bundle.min.jsដែលមាន Popper ។
  • ព័ត៌មានជំនួយត្រូវបានជ្រើសរើសសម្រាប់ហេតុផលប្រតិបត្តិការ ដូច្នេះ អ្នកត្រូវតែចាប់ផ្តើម ពួកវា ដោយខ្លួនឯង
  • ព័ត៌មានជំនួយដែលមានចំណងជើងប្រវែងសូន្យមិនត្រូវបានបង្ហាញទេ។
  • បញ្ជាក់ container: 'body'ដើម្បីជៀសវាងបញ្ហាក្នុងការបង្ហាញនៅក្នុងសមាសធាតុស្មុគ្រស្មាញ (ដូចជាក្រុមបញ្ចូលរបស់យើង ក្រុមប៊ូតុង។ល។)។
  • ការកេះគន្លឹះឧបករណ៍នៅលើធាតុដែលលាក់នឹងមិនដំណើរការទេ។
  • ព័ត៌មានជំនួយសម្រាប់ .disableddisabledធាតុត្រូវតែត្រូវបានកេះនៅលើធាតុរុំ។
  • នៅពេលដែលត្រូវបានកេះចេញពីតំណខ្ពស់ដែលលាតសន្ធឹងច្រើនបន្ទាត់ នោះព័ត៌មានជំនួយនឹងស្ថិតនៅកណ្តាល។ ប្រើ white-space: nowrap;នៅលើរបស់អ្នក <a>ដើម្បីជៀសវាងអាកប្បកិរិយានេះ។
  • ព័ត៌មានជំនួយត្រូវតែលាក់ មុនពេលធាតុដែលត្រូវគ្នារបស់ពួកគេត្រូវបានយកចេញពី DOM ។
  • ព័ត៌មានជំនួយអាចត្រូវបានបង្កឡើងដោយអរគុណចំពោះធាតុមួយនៅក្នុងស្រមោល DOM ។

ទទួលបានទាំងអស់នោះ? ល្អណាស់ តោះមើលពីរបៀបដែលពួកគេធ្វើការជាមួយនឹងឧទាហរណ៍មួយចំនួន។

តាមលំនាំដើម សមាសធាតុនេះប្រើសារធាតុអនាម័យមាតិកាដែលភ្ជាប់មកជាមួយ ដែលដកចេញនូវធាតុ HTML ណាមួយដែលមិនត្រូវបានអនុញ្ញាតយ៉ាងច្បាស់។ សូមមើល ផ្នែកអនាម័យនៅក្នុងឯកសារ JavaScript របស់យើង សម្រាប់ព័ត៌មានលម្អិតបន្ថែម។
ឥទ្ធិពលចលនានៃសមាសភាគនេះគឺអាស្រ័យលើ prefers-reduced-motionសំណួរមេឌៀ។ សូមមើល ផ្នែកចលនាដែលបានកាត់បន្ថយនៃឯកសារភាពងាយស្រួលរបស់យើង

ឧទាហរណ៍

បើកដំណើរការព័ត៌មានជំនួយ

ដូចដែលបានរៀបរាប់ខាងលើ អ្នកត្រូវតែចាប់ផ្តើមព័ត៌មានជំនួយមុនពេលពួកវាអាចប្រើបាន។ វិធីមួយដើម្បីចាប់ផ្តើមព័ត៌មានជំនួយទាំងអស់នៅលើទំព័រមួយគឺជ្រើសរើសពួកវាតាម data-bs-toggleគុណលក្ខណៈរបស់ពួកគេ ដូចជា៖

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

ដាក់លើតំណខាងក្រោមដើម្បីមើលព័ត៌មានជំនួយ៖

អត្ថបទកន្លែងដាក់ដើម្បីបង្ហាញ តំណភ្ជាប់ក្នុងជួរ មួយចំនួន ជាមួយនឹងព័ត៌មានជំនួយ។ នេះគ្រាន់តែជាការបំពេញ គ្មានឃាតករទេ។ ខ្លឹមសារ​ដែល​ដាក់​នៅ​ទីនេះ​គ្រាន់​តែ​ធ្វើ​ត្រាប់​តាម​វត្តមាន​នៃ ​អត្ថបទ​ពិត ។ ហើយអ្វីទាំងអស់នោះគ្រាន់តែដើម្បីផ្តល់ឱ្យអ្នកនូវគំនិតអំពីរបៀបដែលព័ត៌មានជំនួយនឹងមើលទៅនៅពេលប្រើក្នុងស្ថានភាពជាក់ស្តែង។ ដូច្នេះសង្ឃឹមថាឥឡូវនេះ អ្នកបានឃើញពីរបៀបដែល ព័ត៌មានជំនួយទាំងនេះនៅលើតំណភ្ជាប់ អាចដំណើរការក្នុងការអនុវត្តជាក់ស្តែង នៅពេលដែលអ្នកប្រើពួកវានៅលើ គេហទំព័រ ឬគម្រោង ផ្ទាល់ខ្លួនរបស់អ្នក ។

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>
ប្រើដោយសេរី titledata-bs-titleនៅក្នុង HTML របស់អ្នក។ នៅពេលដែល titleត្រូវបានប្រើ Popper នឹងជំនួសវាដោយស្វ័យប្រវត្តិ data-bs-titleនៅពេលដែលធាតុត្រូវបានបង្ហាញ។

ព័ត៌មានជំនួយផ្ទាល់ខ្លួន

បានបន្ថែមនៅក្នុង v5.2.0

អ្នក​អាច​ប្ដូរ​រូបរាង​ព័ត៌មាន​ជំនួយ​តាម​បំណង​ដោយ​ប្រើ ​អថេរ CSS ។ យើងកំណត់ថ្នាក់ផ្ទាល់ខ្លួនជាមួយ data-bs-custom-class="custom-tooltip"ដើម្បីកំណត់ទំហំរូបរាងផ្ទាល់ខ្លួនរបស់យើង ហើយប្រើវាដើម្បីបដិសេធអថេរ CSS មូលដ្ឋាន។

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

ទិសដៅ

អូសលើប៊ូតុងខាងក្រោម ដើម្បីមើលទិសដៅជំនួយទាំងបួន៖ ខាងលើ ស្តាំ បាត និងឆ្វេង។ ទិសដៅត្រូវបានឆ្លុះបញ្ចាំងនៅពេលប្រើ Bootstrap ក្នុង 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>

ហើយជាមួយនឹងការបន្ថែម HTML ផ្ទាល់ខ្លួន៖

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

ជាមួយ SVG៖

CSS

អថេរ

បានបន្ថែមនៅក្នុង v5.2.0

ជាផ្នែកមួយនៃវិធីសាស្រ្តអថេរ CSS ដែលកំពុងវិវឌ្ឍន៍របស់ Bootstrap ការណែនាំឧបករណ៍ឥឡូវនេះប្រើអថេរ CSS មូលដ្ឋាន .tooltipសម្រាប់ការកែលម្អតាមពេលវេលាជាក់ស្តែង។ តម្លៃសម្រាប់អថេរ CSS ត្រូវបានកំណត់តាមរយៈ Sass ដូច្នេះការប្ដូរតាមបំណង 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};
  

អថេរ 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

ការប្រើប្រាស់

កម្មវិធីជំនួយព័ត៌មានជំនួយបង្កើតមាតិកា និងការសម្គាល់តាមតម្រូវការ ហើយតាមលំនាំដើមដាក់ព័ត៌មានជំនួយបន្ទាប់ពីធាតុគន្លឹះរបស់ពួកគេ។

កេះព័ត៌មានជំនួយតាមរយៈ JavaScript៖

const exampleEl = document.getElementById('example')
const tooltip = new bootstrap.Tooltip(exampleEl, options)
ហូរហៀរ autoនិងscroll

ទីតាំងព័ត៌មានជំនួយព្យាយាមផ្លាស់ប្តូរដោយស្វ័យប្រវត្តិនៅពេលដែល កុងតឺន័រមេមានoverflow: autoចូលចិត្ត overflow: scrollរបស់យើង .table-responsiveប៉ុន្តែនៅតែរក្សាទីតាំងរបស់ទីតាំងដើម។ ដើម្បី​ដោះស្រាយ​បញ្ហា​នេះ សូម​កំណត់ boundary​ជម្រើស (សម្រាប់​ការ​កែប្រែ​ត្រឡប់​ដោយ​ប្រើ popperConfig​ជម្រើស) ទៅ HTMLElement ណាមួយ​ដើម្បី​បដិសេធ​តម្លៃ​លំនាំដើម 'clippingParents'ដូចជា document.body

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

សម្គាល់

ការសម្គាល់ដែលត្រូវការសម្រាប់ព័ត៌មានជំនួយគឺគ្រាន់តែជា dataគុណលក្ខណៈ និង titleនៅលើធាតុ HTML ដែលអ្នកចង់មានព័ត៌មានជំនួយ។ ការសម្គាល់ដែលបានបង្កើតនៃព័ត៌មានជំនួយគឺសាមញ្ញជាង ទោះបីជាវាទាមទារទីតាំង (តាមលំនាំដើម កំណត់ topដោយកម្មវិធីជំនួយ)។

ការធ្វើឱ្យព័ត៌មានជំនួយដំណើរការសម្រាប់អ្នកប្រើប្រាស់ក្តារចុច និងជំនួយបច្ចេកវិទ្យា

អ្នក​គួរ​តែ​បន្ថែម​ព័ត៌មាន​ជំនួយ​ទៅ​ធាតុ HTML ដែល​ជា​ប្រពៃណី​អាច​ផ្តោត​លើ​ក្ដារចុច និង​អន្តរកម្ម​បាន (ដូចជា​តំណ ឬ​ទម្រង់​គ្រប់គ្រង)។ ទោះបីជាធាតុ HTML បំពាន (ដូចជា <span>s) អាចផ្តោតបានដោយការបន្ថែម tabindex="0"គុណលក្ខណៈក៏ដោយ វានឹងបន្ថែមការបញ្ឈប់ផ្ទាំងដែលអាចរំខាន និងច្របូកច្របល់លើធាតុដែលមិនអន្តរកម្មសម្រាប់អ្នកប្រើប្រាស់ក្តារចុច ហើយបច្ចេកវិទ្យាជំនួយភាគច្រើនបច្ចុប្បន្នមិនប្រកាសព័ត៌មានជំនួយក្នុងស្ថានភាពនេះទេ។ លើសពីនេះ ��ុំពឹងផ្អែកទាំងស្រុងទៅលើ hoverគន្លឹះសម្រាប់ព័ត៌មានជំនួយរបស់អ្នក ព្រោះវានឹងធ្វើឱ្យព័ត៌មានជំនួយរបស់អ្នកមិនអាចទៅរួចសម្រាប់អ្នកប្រើប្រាស់ក្តារចុច។

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

ធាតុពិការ

ធាតុ​ដែល​មាន disabled​គុណលក្ខណៈ​មិន​មាន​អន្តរកម្ម​ទេ មានន័យថា​អ្នក​ប្រើ​មិន​អាច​ផ្ដោត​លើ​អេក្រង់ ឬ​ចុច​ពួកវា​ដើម្បី​កេះ​ព័ត៌មាន​ជំនួយ (ឬ popover)។ ជាដំណោះស្រាយមួយ អ្នកនឹងចង់កេះព័ត៌មានជំនួយពីក្រដាសរុំ <div><span>បង្កើតតាមឧត្ដមគតិក្តារចុចដែលអាចផ្តោតបានដោយប្រើ 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>

ជម្រើស

ដោយសារជម្រើសអាចត្រូវបានឆ្លងកាត់តាមគុណលក្ខណៈទិន្នន័យ ឬ JavaScript អ្នកអាចបន្ថែមឈ្មោះជម្រើសទៅ data-bs-ដូចក្នុង data-bs-animation="{value}". ត្រូវប្រាកដថាផ្លាស់ប្តូរប្រភេទករណីនៃឈ្មោះជម្រើសពី " camelCase " ទៅ " kebab-case " នៅពេលឆ្លងកាត់ជម្រើសតាមរយៈគុណលក្ខណៈទិន្នន័យ។ ឧទាហរណ៍ ប្រើ data-bs-custom-class="beautifier"ជំនួស data-bs-customClass="beautifier".

ចាប់ពី Bootstrap 5.2.0 សមាសធាតុទាំងអស់គាំទ្រ គុណលក្ខណៈទិន្នន័យដែលបានបម្រុងទុក ដោយពិសោធន៍data-bs-config ដែលអាចដាក់ការកំណត់រចនាសម្ព័ន្ធសមាសធាតុសាមញ្ញជាខ្សែអក្សរ JSON ។ នៅពេលដែលធាតុមាន data-bs-config='{"delay":0, "title":123}'និង data-bs-title="456"គុណលក្ខណៈ តម្លៃចុងក្រោយ titleនឹងជា 456ហើយគុណលក្ខណៈទិន្នន័យដាច់ដោយឡែកនឹងបដិសេធតម្លៃដែលបានផ្តល់ឱ្យនៅលើ data-bs-config. លើសពីនេះ គុណលក្ខណៈទិន្នន័យដែលមានស្រាប់អាចដាក់តម្លៃ JSON ដូចជា data-bs-delay='{"show":0,"hide":150}'.

ចំណាំថាសម្រាប់ហេតុផលសុវត្ថិភាព sanitize, sanitizeFn, និង allowListជម្រើសមិនអាចត្រូវបានផ្គត់ផ្គង់ដោយប្រើលក្ខណៈទិន្នន័យ។
ឈ្មោះ ប្រភេទ លំនាំដើម ការពិពណ៌នា
allowList វត្ថុ តម្លៃ​លំនាំដើម វត្ថុដែលមានគុណលក្ខណៈ និងស្លាកដែលបានអនុញ្ញាត។
animation ប៊ូលីន true អនុវត្តការផ្លាស់ប្តូរបន្ថយ CSS ទៅព័ត៌មានជំនួយ។
boundary ខ្សែអក្សរ, ធាតុ 'clippingParents' ព្រំដែនកម្រិតលើសចំណុះនៃព័ត៌មានជំនួយ (អនុវត្តតែចំពោះឧបករណ៍កែប្រែទប់ស្កាត់ការហូរលើសរបស់ Popper ប៉ុណ្ណោះ)។ តាមលំនាំដើម វាជា 'clippingParents'និងអាចទទួលយកឯកសារយោង HTMLElement (តាមរយៈ JavaScript តែប៉ុណ្ណោះ)។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល ឯកសារ detectOverflow របស់ Popper ។
container ខ្សែអក្សរ, ធាតុ, មិនពិត false បន្ថែមព័ត៌មានជំនួយទៅធាតុជាក់លាក់មួយ។ ឧទាហរណ៍៖ container: 'body'. ជម្រើសនេះមានប្រយោជន៍ជាពិសេសក្នុងការដែលវាអនុញ្ញាតឱ្យអ្នកដាក់ព័ត៌មានជំនួយនៅក្នុងលំហូរនៃឯកសារនៅជិតធាតុកេះ - ដែលនឹងការពារព័ត៌មានជំនួយមិនឱ្យអណ្តែតចេញពីធាតុកេះកំឡុងពេលផ្លាស់ប្តូរទំហំបង្អួច។
customClass ខ្សែអក្សរ, មុខងារ '' បន្ថែមថ្នាក់ទៅព័ត៌មានជំនួយនៅពេលវាត្រូវបានបង្ហាញ។ ចំណាំថាថ្នាក់ទាំងនេះនឹងត្រូវបានបន្ថែមបន្ថែមលើថ្នាក់ណាមួយដែលបានបញ្ជាក់នៅក្នុងគំរូ។ ដើម្បីបន្ថែមថ្នាក់ច្រើន សូមបំបែកវាដោយដកឃ្លា៖ 'class-1 class-2'. អ្នកក៏អាចឆ្លងកាត់មុខងារដែលគួរត្រឡប់ខ្សែតែមួយដែលមានឈ្មោះថ្នាក់បន្ថែម។
delay លេខ, វត្ថុ 0 ការពន្យារពេលបង្ហាញ និងលាក់ព័ត៌មានជំនួយ (ms) - មិនអនុវត្តចំពោះប្រភេទគន្លឹះដោយដៃទេ។ ប្រសិនបើលេខត្រូវបានផ្គត់ផ្គង់ ការពន្យារពេលត្រូវបានអនុវត្តចំពោះទាំងលាក់/បង្ហាញ។ រចនាសម្ព័ន្ធវត្ថុគឺ៖ delay: { "show": 500, "hide": 100 }
fallbackPlacements អារេ ['top', 'right', 'bottom', 'left'] កំណត់​ការ​ដាក់​ជំនួស​ដោយ​ផ្ដល់​បញ្ជី​នៃ​ការ​ដាក់​ក្នុង​អារេ (តាម​លំដាប់​តាម​ចំណូល​ចិត្ត)។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល ឯកសារអាកប្បកិរិយា របស់ Popper ។
html ប៊ូលីន false អនុញ្ញាត HTML នៅក្នុងព័ត៌មានជំនួយ។ ប្រសិនបើជាការពិត ស្លាក HTML នៅក្នុងព័ត៌មានជំនួយ titleនឹងត្រូវបានបង្ហាញនៅក្នុងព័ត៌មានជំនួយ។ ប្រសិនបើមិនពិត innerTextទ្រព្យសម្បត្តិនឹងត្រូវបានប្រើដើម្បីបញ្ចូលខ្លឹមសារទៅក្នុង DOM ។ ប្រើអត្ថបទប្រសិនបើអ្នកព្រួយបារម្ភអំពីការវាយប្រហារ XSS ។
offset អារេ ខ្សែអក្សរ មុខងារ [0, 0] អុហ្វសិតនៃព័ត៌មានជំនួយទាក់ទងនឹងគោលដៅរបស់វា។ អ្នក​អាច​បញ្ជូន​ខ្សែ​អក្សរ​ក្នុង​គុណលក្ខណៈ​ទិន្នន័យ​ដែល​មាន​តម្លៃ​បំបែក​ដោយ​សញ្ញាក្បៀស​ដូចជា៖ data-bs-offset="10,20". នៅពេលដែលអនុគមន៍មួយត្រូវបានប្រើដើម្បីកំណត់អុហ្វសិត វាត្រូវបានហៅជាមួយវត្ថុដែលមានការដាក់ popper ឯកសារយោង និង popper rects ជាអាគុយម៉ង់ដំបូងរបស់វា។ ថ្នាំង DOM ធាតុកេះត្រូវបានឆ្លងកាត់ជាអាគុយម៉ង់ទីពីរ។ អនុគមន៍​ត្រូវ​តែ​ត្រឡប់​អារេ​ដែល​មាន​លេខ​ពីរ រំលង ចម្ងាយ ។ សម្រាប់ព័ត៌មានបន្ថែម សូមមើល ឯកសារអុហ្វសិត របស់ Popper ។
placement ខ្សែអក្សរ, មុខងារ 'top' របៀបកំណត់ទីតាំងព័ត៌មានជំនួយ៖ ស្វ័យប្រវត្តិ កំពូល បាត ឆ្វេង ស្តាំ។ នៅពេលដែល autoត្រូវបានបញ្ជាក់ វានឹងតម្រង់ទិសគន្លឹះឧបករណ៍ឡើងវិញដោយថាមវន្ត។ នៅពេលដែលអនុគមន៍មួយត្រូវបានប្រើដើម្បីកំណត់ការដាក់ វាត្រូវបានហៅដោយប្រើថ្នាំង DOM ជំនួយជាអាគុយម៉ង់ដំបូងរបស់វា និងធាតុដែលបង្កដោយថ្នាំង DOM ជាទីពីររបស់វា។ បរិបទ thisត្រូវបានកំណត់ទៅឧទាហរណ៍ព័ត៌មានជំនួយ។
popperConfig null, object, function null ដើម្បីផ្លាស់ប្តូរការកំណត់ Popper លំនាំដើមរបស់ Bootstrap សូមមើល ការកំណត់រចនាសម្ព័ន្ធរបស់ Popper ។ នៅពេលដែលមុខងារមួយត្រូវបានប្រើដើម្បីបង្កើតការកំណត់រចនាសម្ព័ន្ធ Popper វាត្រូវបានហៅជាមួយវត្ថុដែលមានការកំណត់រចនាសម្ព័ន្ធ Popper លំនាំដើមរបស់ Bootstrap ។ វាជួយអ្នកប្រើ និងបញ្ចូលលំនាំដើមជាមួយការកំណត់ផ្ទាល់ខ្លួនរបស់អ្នក។ មុខងារត្រូវតែត្រឡប់វត្ថុកំណត់រចនាសម្ព័ន្ធសម្រាប់ Popper ។
sanitize ប៊ូលីន true បើក ឬបិទការធ្វើអនាម័យ។ ប្រសិនបើបានធ្វើឱ្យសកម្ម 'template'ហើយ ជម្រើស 'content'នឹង 'title'ត្រូវបានសម្អាត។
sanitizeFn null, មុខងារ null នៅទីនេះអ្នកអាចផ្គត់ផ្គង់មុខងារអនាម័យផ្ទាល់ខ្លួនរបស់អ្នក។ វាអាចមានប្រយោជន៍ ប្រសិនបើអ្នកចូលចិត្តប្រើបណ្ណាល័យដែលខិតខំប្រឹងប្រែងដើម្បីអនុវត្តអនាម័យ។
selector ខ្សែអក្សរ, មិនពិត false ប្រសិនបើឧបករណ៍ជ្រើសរើសត្រូវបានផ្តល់ឱ្យ វត្ថុជំនួយនឹងត្រូវបានផ្ទេរទៅគោលដៅដែលបានបញ្ជាក់។ នៅក្នុងការអនុវត្ត វាត្រូវបានប្រើដើម្បីអនុវត្តព័ត៌មានជំនួយផងដែរចំពោះធាតុ DOM ( jQuery.onជំនួយ) ដែលបានបន្ថែមថាមវន្ត។ សូមមើល បញ្ហានេះ និង ឧទាហរណ៍ព័ត៌មាន
template ខ្សែអក្សរ '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' មូលដ្ឋាន HTML ដើម្បីប្រើនៅពេលបង្កើតព័ត៌មានជំនួយ។ ព័ត៌មានជំនួយ titleនឹងត្រូវបានចាក់ចូលទៅក្នុង .tooltip-inner. .tooltip-arrowនឹងក្លាយជាព្រួញរបស់ឧបករណ៍។ ធាតុរុំខាងក្រៅបំផុតគួរតែមាន .tooltipថ្នាក់ និង role="tooltip".
title ខ្សែអក្សរ, ធាតុ, មុខងារ '' តម្លៃចំណងជើងលំនាំដើម ប្រសិនបើ titleគុណលក្ខណៈមិនមានវត្តមាន។ ប្រសិនបើមុខងារត្រូវបានផ្តល់ឱ្យ វានឹងត្រូវបានគេហៅជាមួយនឹង thisការកំណត់របស់វាទៅកាន់ធាតុដែល popover ត្រូវបានភ្ជាប់។
trigger ខ្សែអក្សរ 'hover focus' របៀបដែលព័ត៌មានជំនួយត្រូវបានកេះ៖ ចុច ដាក់កណ្ដុរ ផ្ដោត សៀវភៅដៃ។ អ្នកអាចឆ្លងកាត់គន្លឹះជាច្រើន; បំបែកពួកវាដោយចន្លោះមួយ។ 'manual'បង្ហាញថាព័ត៌មានជំនួយនឹងត្រូវបានកេះតាមកម្មវិធីតាមរយៈ .tooltip('show'), .tooltip('hide')និង .tooltip('toggle')វិធីសាស្រ្ត; តម្លៃ​នេះ​មិន​អាច​ត្រូវ​បាន​រួម​បញ្ចូល​ជាមួយ​នឹង​កេះ​ផ្សេង​ទៀត​ទេ។ 'hover'ដោយខ្លួនវាផ្ទាល់នឹងផ្តល់លទ្ធផលនៅក្នុងព័ត៌មានជំនួយដែលមិនអាចត្រូវបានកេះតាមរយៈក្តារចុច ហើយគួរតែត្រូវបានប្រើលុះត្រាតែមានវិធីសាស្ត្រជំនួសសម្រាប់ការបញ្ជូនព័ត៌មានដូចគ្នាសម្រាប់អ្នកប្រើប្រាស់ក្តារចុច។

គុណលក្ខណៈទិន្នន័យសម្រាប់ព័ត៌មានជំនួយបុគ្គល

ជម្រើសសម្រាប់ព័ត៌មានជំនួយបុគ្គលអាចត្រូវបានបញ្ជាក់ជាជម្រើសតាមរយៈការប្រើប្រាស់គុណលក្ខណៈទិន្នន័យ ដូចដែលបានពន្យល់ខាងលើ។

ការប្រើប្រាស់មុខងារជាមួយpopperConfig

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

វិធីសាស្រ្ត

វិធីសាស្រ្ត និងការផ្លាស់ប្តូរអសមកាល

វិធីសាស្រ្ត API ទាំងអស់គឺ អសមកាល ហើយចាប់ផ្តើមការ ផ្លាស់ប្តូរ ។ ពួកគេត្រឡប់ទៅអ្នកហៅចូលវិញភ្លាមៗ នៅពេលដែលការផ្លាស់ប្តូរត្រូវបានចាប់ផ្តើម ប៉ុន្តែ មុនពេលវាបញ្ចប់ ។ លើស​ពី​នេះ​ទៀត ការ​ហៅ​តាម​វិធី​សាស្ត្រ​លើ ​សមាសភាគ​អន្តរកាល​នឹង​ត្រូវ​បាន​មិន​អើពើ

សូមមើលឯកសារ JavaScript របស់យើងសម្រាប់ព័ត៌មានបន្ថែម

វិធីសាស្រ្ត ការពិពណ៌នា
disable ដកសមត្ថភាពសម្រាប់ព័ត៌មានជំនួយរបស់ធាតុដែលត្រូវបង្ហាញ។ ព័ត៌មានជំនួយនឹងអាចបង្ហាញបានលុះត្រាតែវាត្រូវបានបើកដំណើរការឡើងវិញ។
dispose លាក់ និងបំផ្លាញព័ត៌មានជំនួយរបស់ធាតុ (លុបទិន្នន័យដែលបានរក្សាទុកនៅលើធាតុ DOM) ។ ព័ត៌មានជំនួយដែលប្រើការផ្ទេរសិទ្ធិ (ដែលត្រូវបានបង្កើតដោយប្រើ ជម្រើសselector ) មិនអាចត្រូវបានបំផ្លាញដោយឡែកៗពីគ្នាលើធាតុកេះបន្តបន្ទាប់ឡើយ
enable ផ្តល់ព័ត៌មានជំនួយរបស់ធាតុមួយ ដែលមានសមត្ថភាពបង្ហាញ។ ព័ត៌មានជំនួយត្រូវបានបើកតាមលំនាំដើម។
getInstance វិធីសាស្ត្រ ឋិតិវន្ត ដែលអនុញ្ញាតឱ្យអ្នកទទួលបានឧទាហរណ៍ព័ត៌មានជំនួយដែលភ្ជាប់ជាមួយធាតុ DOM ឬបង្កើតថ្មីមួយក្នុងករណីដែលវាមិនត្រូវបានចាប់ផ្តើម។
getOrCreateInstance វិធីសាស្ត្រ ឋិតិវន្ត ដែលអនុញ្ញាតឱ្យអ្នកទទួលបានឧទាហរណ៍ព័ត៌មានជំនួយដែលភ្ជាប់ជាមួយធាតុ DOM ឬបង្កើតថ្មីមួយក្នុងករណីដែលវាមិនត្រូវបានចាប់ផ្តើម។
hide លាក់ព័ត៌មានជំនួយរបស់ធាតុមួយ។ ត្រឡប់ទៅអ្នកហៅទូរសព្ទវិញ មុនពេលព័ត៌មានជំនួយត្រូវបានលាក់ (ឧ. មុនពេល hidden.bs.tooltipព្រឹត្តិការណ៍កើតឡើង)។ នេះ​ត្រូវ​បាន​គេ​ចាត់​ទុក​ថា​ជា​ការ​កេះ "សៀវភៅ​ដៃ" នៃ​ព័ត៌មាន​ជំនួយ។
setContent ផ្តល់មធ្យោបាយដើម្បីផ្លាស់ប្តូរខ្លឹមសារព័ត៌មានជំនួយបន្ទាប់ពីការចាប់ផ្តើមរបស់វា។
show បង្ហាញព័ត៌មានជំនួយរបស់ធាតុមួយ។ ត្រឡប់ទៅអ្នកហៅទូរស័ព្ទវិញ មុនពេលព័ត៌មានជំនួយត្រូវបានបង្ហាញយ៉ាងពិតប្រាកដ (ឧទាហរណ៍ មុនពេល shown.bs.tooltipព្រឹត្តិការណ៍កើតឡើង)។ នេះ​ត្រូវ​បាន​គេ​ចាត់​ទុក​ថា​ជា​ការ​កេះ "សៀវភៅ​ដៃ" នៃ​ព័ត៌មាន​ជំនួយ។ ព័ត៌មានជំនួយដែលមានចំណងជើងប្រវែងសូន្យមិនត្រូវបានបង្ហាញទេ។
toggle បិទបើកព័ត៌មានជំនួយរបស់ធាតុមួយ។ ត្រឡប់ទៅអ្នកហៅទូរសព្ទវិញ មុនពេលព័ត៌មានជំនួយត្រូវបានបង្ហាញ ឬលាក់shown.bs.tooltip ( ឧទាហរណ៍ មុនពេល hidden.bs.tooltipព្រឹត្តិការណ៍កើតឡើង)។ នេះ​ត្រូវ​បាន​គេ​ចាត់​ទុក​ថា​ជា​ការ​កេះ "សៀវភៅ​ដៃ" នៃ​ព័ត៌មាន​ជំនួយ។
toggleEnabled បិទ/បើក​សមត្ថភាព​សម្រាប់​ព័ត៌មានជំនួយ​របស់​ធាតុ​ដើម្បី​បង្ហាញ ឬ​លាក់។
update ធ្វើបច្ចុប្បន្នភាពទីតាំងនៃព័ត៌មានជំនួយរបស់ធាតុមួយ។
const tooltip = bootstrap.Tooltip.getInstance('#example') // Returns a Bootstrap tooltip instance

// setContent example
tooltip.setContent({ '.tooltip-inner': 'another title' })
វិធី setContentសាស្រ្ដទទួលយក objectអាគុយម៉ង់មួយ ដែលគ្រប់លក្ខណសម្បត្តិ-កូនសោគឺជាអ្នក stringជ្រើសរើសត្រឹមត្រូវនៅក្នុងគំរូ popover ហើយតម្លៃអចលនទ្រព្យដែលទាក់ទងគ្នាអាចជា string| element| function| null

ព្រឹត្តិការណ៍

ព្រឹត្តិការណ៍ ការពិពណ៌នា
hide.bs.tooltip ព្រឹត្តិការណ៍​នេះ​ត្រូវ​បាន​បញ្ឈប់​ភ្លាមៗ​នៅ​ពេល​ដែល hide​វិធីសាស្ត្រ​វត្ថុ​ត្រូវ​បាន​ហៅ។
hidden.bs.tooltip ព្រឹត្តិការណ៍នេះត្រូវបានបញ្ឈប់នៅពេលដែល popover បានបញ្ចប់ត្រូវបានលាក់ពីអ្នកប្រើប្រាស់ (នឹងរង់ចាំការផ្លាស់ប្តូរ CSS បញ្ចប់)។
inserted.bs.tooltip ព្រឹត្តិការណ៍នេះត្រូវបានបញ្ឈប់បន្ទាប់ពី show.bs.tooltipព្រឹត្តិការណ៍ នៅពេលដែលគំរូព័ត៌មានជំនួយត្រូវបានបន្ថែមទៅ DOM ។
show.bs.tooltip ព្រឹត្តិការណ៍នេះឆេះភ្លាមៗ នៅពេលដែល showវិធីសាស្ត្រ instance ត្រូវបានហៅ។
shown.bs.tooltip ព្រឹត្តិការណ៍​នេះ​ត្រូវ​បាន​បញ្ឈប់​នៅ​ពេល​ដែល​ផ្ទាំង​ព័ត៌មាន​ត្រូវ​បាន​ធ្វើ​ឱ្យ​អ្នក​ប្រើ​មើល​ឃើញ (នឹង​រង់ចាំ​ការ​ផ្លាស់​ប្តូរ CSS ដើម្បី​បញ្ចប់)។
const myTooltipEl = document.getElementById('myTooltip')
const tooltip = bootstrap.Tooltip.getOrCreateInstance(myTooltipEl)

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

tooltip.hide()