टूलटिप्स
स्थानीय शीर्षक भण्डारणका लागि एनिमेसनहरू र डेटा-बीएस-विशेषताहरूका लागि CSS3 प्रयोग गरेर CSS र JavaScript सँग अनुकूलन बुटस्ट्र्याप टूलटिपहरू थप्नका लागि दस्तावेज र उदाहरणहरू।
अवलोकन
टुलटिप प्लगइन प्रयोग गर्दा जान्नुपर्ने कुराहरू:
- टूलटिपहरू पोजिसनिङका लागि तेस्रो पार्टी लाइब्रेरी पोपरमा भर पर्छन् । तपाईंले bootstrap.js अघि popper.min.js समावेश गर्नुपर्दछ वा टूलटिपहरू काम गर्नको लागि पप्पर समावेश गर्ने
bootstrap.bundle.min.js
/ प्रयोग गर्नुहोस्!bootstrap.bundle.js
- टूलटिपहरू प्रदर्शनका कारणहरूका लागि अप्ट-इन हुन्छन्, त्यसैले तपाईंले तिनीहरूलाई आफैं सुरु गर्नुपर्छ ।
- शून्य-लम्बाइ शीर्षकहरू भएका उपकरण टिपहरू कहिल्यै प्रदर्शित हुँदैनन्।
container: 'body'
थप जटिल कम्पोनेन्टहरू (जस्तै हाम्रो इनपुट समूहहरू, बटन समूहहरू, आदि) मा रेन्डरिङ समस्याहरूबाट बच्न निर्दिष्ट गर्नुहोस्।- लुकेका तत्वहरूमा ट्रिगर गर्ने टूलटिप्सले काम गर्दैन।
.disabled
र्यापर तत्वमा वा तत्वहरूका लागि टुलटिपहरूdisabled
ट्रिगर गरिनु पर्छ।- हाइपरलिङ्कहरूबाट ट्रिगर गर्दा धेरै रेखाहरू फैलिएको छ, टूलटिपहरू केन्द्रित हुनेछन्। यो व्यवहारबाट बच्न
white-space: nowrap;
आफ्नो s मा प्रयोग गर्नुहोस्।<a>
- DOM बाट सम्बन्धित तत्वहरू हटाइनु अघि टूलटिपहरू लुकाउनु पर्छ।
- छाया DOM भित्रको तत्वको लागि उपकरणटिपहरू ट्रिगर गर्न सकिन्छ।
prefers-reduced-motion
मिडिया क्वेरीमा निर्भर हुन्छ। हाम्रो पहुँच कागजातको घटाइएको गति खण्ड हेर्नुहोस्
।
त्यो सबै पाउनुभयो? राम्रो, तिनीहरूले केही उदाहरणहरू कसरी काम गर्छन् हेरौं।
उदाहरण: जताततै टुलटिप्स सक्षम गर्नुहोस्
पृष्ठमा सबै टूलटिपहरू प्रारम्भ गर्ने एउटा तरिका तिनीहरूको विशेषताद्वारा तिनीहरूलाई चयन गर्नु हो data-bs-toggle
:
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
return new bootstrap.Tooltip(tooltipTriggerEl)
})
उदाहरणहरू
टूलटिपहरू हेर्न तलका लिङ्कहरूमा होभर गर्नुहोस्:
प्लेसहोल्डर पाठ टुलटिप्सको साथ केही इनलाइन लिङ्कहरू प्रदर्शन गर्न। यो अब केवल फिलर हो, कुनै हत्यारा छैन। वास्तविक पाठको उपस्थिति नक्कल गर्न यहाँ राखिएको सामग्री । र ती सबै तपाईंलाई वास्तविक-विश्व परिस्थितिहरूमा प्रयोग गर्दा टूलटिपहरू कस्तो देखिन्छ भनेर एक विचार दिनको लागि। त्यसोभए आशा छ कि तपाईंले अब देख्नुभएको छ कि लिङ्कहरूमा यी टूलटिपहरूले कसरी व्यवहारमा काम गर्न सक्छन्, एकपटक तपाईंले तिनीहरूलाई आफ्नै साइट वा परियोजनामा प्रयोग गर्नुभयो।
माथि, दायाँ, तल र बायाँ: चार टुलटिप्स निर्देशनहरू हेर्न तलका बटनहरूमा होभर गर्नुहोस्। RTL मा बुटस्ट्र्याप प्रयोग गर्दा दिशाहरू प्रतिबिम्बित हुन्छन्।
<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>
र अनुकूलन HTML को साथ थपियो:
<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 सँग:
सास
चरहरू
$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;
प्रयोग
टूलटिप प्लगइनले मागमा सामग्री र मार्कअप उत्पन्न गर्दछ, र पूर्वनिर्धारित रूपमा तिनीहरूको ट्रिगर तत्व पछि उपकरणटिपहरू राख्छ।
जाभास्क्रिप्ट मार्फत टूलटिप ट्रिगर गर्नुहोस्:
var exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, options)
ओभरफ्लो auto
रscroll
टुलटिप स्थिति स्वचालित रूपमा परिवर्तन गर्ने प्रयास गर्दछ जब अभिभावक कन्टेनरमा हाम्रो मनपर्छ , तर अझै पनि मूल प्लेसमेन्टको स्थिति राख्छ । यसलाई समाधान गर्न , पूर्वनिर्धारित मान ओभरराइड गर्न कुनै पनि HTMLElement मा विकल्प सेट गर्नुहोस् (विकल्प प्रयोग गरेर फ्लिप परिमार्जनकर्ताको लागि ) , जस्तै :overflow: auto
overflow: scroll
.table-responsive
boundary
popperConfig
'clippingParents'
document.body
var exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, {
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" 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
अन्तरक्रियात्मक हुँदैनन्, यसको मतलब प्रयोगकर्ताहरूले टुलटिप (वा पपओभर) ट्रिगर गर्न फोकस गर्न, होभर गर्न वा क्लिक गर्न सक्दैनन्। एक समाधानको रूपमा, तपाइँ टुलटिपलाई र्यापरबाट ट्रिगर गर्न चाहानुहुन्छ <div>
वा <span>
, आदर्श रूपमा किबोर्ड-फोकसयोग्य बनाइएको प्रयोग गरेर 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>
विकल्पहरू
विकल्पहरू डेटा विशेषताहरू वा JavaScript मार्फत पास गर्न सकिन्छ। डेटा विशेषताहरूका लागि, विकल्पको नाम जोड्नुहोस् data-bs-
, जस्तै मा data-bs-animation=""
। डेटा विशेषताहरू मार्फत विकल्पहरू पास गर्दा CamelCase बाट kebab-case मा विकल्प नामको केस प्रकार परिवर्तन गर्न निश्चित गर्नुहोस्। उदाहरणका लागि, प्रयोग गर्नुको सट्टा data-bs-customClass="beautifier"
, प्रयोग गर्नुहोस् data-bs-custom-class="beautifier"
।
sanitize
,
sanitizeFn
र
allowList
विकल्पहरू डेटा विशेषताहरू प्रयोग गरेर आपूर्ति गर्न सकिँदैन।
नाम | टाइप गर्नुहोस् | पूर्वनिर्धारित | विवरण |
---|---|---|---|
animation |
बुलियन | true |
टुलटिपमा CSS फेड ट्रान्जिसन लागू गर्नुहोस् |
container |
स्ट्रिङ | तत्व | गलत | false |
विशेष तत्वमा टुलटिप जोड्छ। उदाहरण |
delay |
नम्बर | वस्तु | 0 |
टुलटिप (ms) देखाउन र लुकाउन ढिलाइ - म्यानुअल ट्रिगर प्रकारमा लागू हुँदैन यदि नम्बर प्रदान गरिएको छ भने, ढिलाइ लुकाउने/देखाउन दुवैमा लागू हुन्छ वस्तु संरचना हो: |
html |
बुलियन | false |
टूलटिपमा HTML लाई अनुमति दिनुहोस्। यदि सही छ भने, टूलटिपमा HTML ट्यागहरू टुलटिपमा यदि तपाईं XSS आक्रमणहरूको बारेमा चिन्तित हुनुहुन्छ भने पाठ प्रयोग गर्नुहोस्। |
placement |
स्ट्रिङ | समारोह | 'top' |
टूलटिप कसरी राख्ने - स्वत: | शीर्ष | तल | बायाँ | सही। जब एक प्रकार्य स्थान निर्धारण गर्न प्रयोग गरिन्छ, यसलाई पहिलो तर्कको रूपमा टुलटिप DOM नोड र दोस्रोको रूपमा ट्रिगर गर्ने तत्व DOM नोडसँग बोलाइन्छ। |
selector |
स्ट्रिङ | गलत | false |
यदि चयनकर्ता प्रदान गरिएको छ भने, टुलटिप वस्तुहरूलाई निर्दिष्ट लक्ष्यहरूमा प्रत्यायोजित गरिनेछ। jQuery.on अभ्यासमा, यो गतिशील रूपमा थपिएका DOM तत्वहरू ( समर्थन) मा टूलटिपहरू लागू गर्न प्रयोग गरिन्छ । यो र एक जानकारीमूलक उदाहरण हेर्नुहोस् । |
template |
तार | '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' |
टूलटिप सिर्जना गर्दा प्रयोग गर्नको लागि आधार HTML। टुलटिपहरू मा सुई
सबैभन्दा बाहिरी र्यापर तत्वमा |
title |
स्ट्रिङ | तत्व | समारोह | '' |
|
trigger |
तार | 'hover focus' |
टूलटिप कसरी ट्रिगर हुन्छ - क्लिक गर्नुहोस् | होभर | फोकस | म्यानुअल। तपाईले धेरै ट्रिगरहरू पास गर्न सक्नुहुन्छ; तिनीहरूलाई स्पेसको साथ अलग गर्नुहोस्।
|
fallbackPlacements |
array | ['top', 'right', 'bottom', 'left'] |
एरेमा (प्राथमिकताको क्रममा) प्लेसमेन्टहरूको सूची प्रदान गरेर फलब्याक प्लेसमेन्टहरू परिभाषित गर्नुहोस्। थप जानकारीको लागि Popper को व्यवहार कागजातहरू हेर्नुहोस् |
boundary |
स्ट्रिङ | तत्व | 'clippingParents' |
टुलटिपको ओभरफ्लो अवरोध सीमा (पोपरको रोकथाम ओभरफ्लो परिमार्जनमा मात्र लागू हुन्छ)। पूर्वनिर्धारित रूपमा यो हो 'clippingParents' र HTMLElement सन्दर्भ स्वीकार गर्न सक्छ (जाभास्क्रिप्ट मार्फत मात्र)। थप जानकारीको लागि Popper's detectOverflow कागजातहरू हेर्नुहोस् । |
customClass |
स्ट्रिङ | समारोह | '' |
यो देखाइएको बेला टुलटिपमा कक्षाहरू थप्नुहोस्। नोट गर्नुहोस् कि यी कक्षाहरू टेम्प्लेटमा निर्दिष्ट गरिएका कुनै पनि कक्षाहरू बाहेक थपिनेछन्। धेरै कक्षाहरू थप्न, तिनीहरूलाई खाली ठाउँहरूद्वारा छुट्याउनुहोस् तपाइँ एक प्रकार्य पास गर्न सक्नुहुन्छ जुन अतिरिक्त वर्ग नामहरू समावेश भएको एकल स्ट्रिङ फर्काउनु पर्छ। |
sanitize |
बुलियन | true |
सेनिटाइजेसन सक्षम वा असक्षम पार्नुहोस्। यदि सक्रिय भयो 'template' र 'title' विकल्पहरू सफा गरिनेछ। हाम्रो JavaScript कागजातमा सेनिटाइजर खण्ड हेर्नुहोस् । |
allowList |
वस्तु | पूर्वनिर्धारित मान | अनुमति दिइएको विशेषताहरू र ट्यागहरू समावेश गर्ने वस्तु |
sanitizeFn |
शून्य | समारोह | null |
यहाँ तपाईं आफ्नो सेनिटाइज प्रकार्य आपूर्ति गर्न सक्नुहुन्छ। यदि तपाइँ एक समर्पित पुस्तकालय प्रयोग गर्न रुचाउनुहुन्छ भने यो उपयोगी हुन सक्छ सरसफाई प्रदर्शन गर्न। |
offset |
array | स्ट्रिङ | समारोह | [0, 0] |
यसको लक्ष्य सापेक्ष टूलटिपको अफसेट। तपाईंले अल्पविराम अलग मानहरू जस्तै डेटा विशेषताहरूमा स्ट्रिङ पास गर्न सक्नुहुन्छ: जब एक प्रकार्य अफसेट निर्धारण गर्न प्रयोग गरिन्छ, यसलाई popper प्लेसमेन्ट, सन्दर्भ, र popper यसको पहिलो तर्कको रूपमा rects भएको वस्तुसँग बोलाइन्छ। ट्रिगर गर्ने तत्व DOM नोड दोस्रो तर्कको रूपमा पारित गरिएको छ। प्रकार्यले दुई संख्याहरू सहितको एरे फर्काउनु पर्छ :। थप जानकारीको लागि Popper अफसेट कागजातहरू हेर्नुहोस् । |
popperConfig |
शून्य | वस्तु | समारोह | null |
Bootstrap को पूर्वनिर्धारित Popper कन्फिगरेसन परिवर्तन गर्न, Popper को कन्फिगरेसन हेर्नुहोस् । जब एक प्रकार्य Popper कन्फिगरेसन सिर्जना गर्न प्रयोग गरिन्छ, यसलाई बुटस्ट्र्यापको पूर्वनिर्धारित Popper कन्फिगरेसन समावेश गर्ने वस्तुसँग बोलाइन्छ। यसले तपाइँलाई तपाइँको आफ्नै कन्फिगरेसनको साथ पूर्वनिर्धारित प्रयोग र मर्ज गर्न मद्दत गर्दछ। प्रकार्यले Popper को लागि कन्फिगरेसन वस्तु फिर्ता गर्नुपर्छ। |
व्यक्तिगत टूलटिपहरूको लागि डेटा विशेषताहरू
व्यक्तिगत टूलटिपका लागि विकल्पहरू वैकल्पिक रूपमा डेटा विशेषताहरूको प्रयोगद्वारा निर्दिष्ट गर्न सकिन्छ, माथि वर्णन गरिए अनुसार।
संग प्रकार्य प्रयोग गर्दैpopperConfig
var tooltip = new bootstrap.Tooltip(element, {
popperConfig: function (defaultBsPopperConfig) {
// var newPopperConfig = {...}
// use defaultBsPopperConfig if needed...
// return newPopperConfig
}
})
विधिहरू
एसिन्क्रोनस विधि र संक्रमण
सबै एपीआई विधिहरू एसिन्क्रोनस छन् र एक संक्रमण सुरु गर्नुहोस् । तिनीहरू संक्रमण सुरु हुने बित्तिकै तर यो समाप्त हुनु अघि कलरमा फर्कन्छन् । थप रूपमा, ट्रान्जिसनिङ कम्पोनेन्टमा विधि कललाई बेवास्ता गरिनेछ ।
देखाउनु
तत्वको टुलटिप प्रकट गर्दछ। टूलटिप वास्तवमा देखाइनु अघि कलरमा फर्कन्छ (अर्थात shown.bs.tooltip
घटना हुनु अघि)। यसलाई टुलटिपको "म्यानुअल" ट्रिगरिङ मानिन्छ। शून्य-लम्बाइ शीर्षकहरू भएका उपकरणटिपहरू कहिल्यै प्रदर्शित हुँदैनन्।
tooltip.show()
लुकाउनुहोस्
तत्वको टुलटिप लुकाउँछ। टूलटिप वास्तवमा लुकाइनु अघि कलरमा फर्कन्छ (अर्थात hidden.bs.tooltip
घटना हुनु अघि)। यसलाई टुलटिपको "म्यानुअल" ट्रिगरिङ मानिन्छ।
tooltip.hide()
टगल गर्नुहोस्
तत्वको टुलटिप टगल गर्छ। टूलटिप वास्तवमा देखाइयो वा लुकेको हुनु अघि कलरमा फर्कन्छ (जस्तै shown.bs.tooltip
वा hidden.bs.tooltip
घटना हुनु अघि)। यसलाई टुलटिपको "म्यानुअल" ट्रिगरिङ मानिन्छ।
tooltip.toggle()
डिस्पोज
तत्वको टुलटिप लुकाउँछ र नष्ट गर्दछ (DOM तत्वमा भण्डारण गरिएको डाटा हटाउँछ)। डेलिगेशन प्रयोग गर्ने टूलटिपहरू (जसलाई विकल्प प्रयोग गरेरselector
सिर्जना गरिन्छ ) व्यक्तिगत रूपमा वंशज ट्रिगर तत्वहरूमा नष्ट गर्न सकिँदैन।
tooltip.dispose()
सक्षम गर्नुहोस्
तत्वको टुलटिपलाई देखाउन सक्ने क्षमता दिन्छ। उपकरणटिपहरू पूर्वनिर्धारित रूपमा सक्षम छन्।
tooltip.enable()
असक्षम पार्नुहोस्
देखाइने तत्वको टुलटिपको लागि क्षमता हटाउँछ। यदि टुलटिप पुन: सक्षम पारिएको छ भने मात्र देखाउन सक्षम हुनेछ।
tooltip.disable()
टगल सक्षम गरियो
तत्वको टुलटिप देखाउन वा लुकाउनको लागि क्षमता टगल गर्दछ।
tooltip.toggleEnabled()
अपडेट गर्नुहोस्
तत्वको टुलटिपको स्थिति अपडेट गर्दछ।
tooltip.update()
उदाहरण प्राप्त गर्नुहोस्
स्थिर विधि जसले तपाईंलाई DOM तत्वसँग सम्बन्धित टूलटिप उदाहरण प्राप्त गर्न अनुमति दिन्छ
var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance
getOrCreateInstance
स्थिर विधि जसले तपाईंलाई DOM तत्वसँग सम्बन्धित टुलटिप उदाहरण प्राप्त गर्न अनुमति दिन्छ, वा यो प्रारम्भ नगरिएको अवस्थामा नयाँ सिर्जना गर्न अनुमति दिन्छ।
var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getOrCreateInstance(exampleTriggerEl) // Returns a Bootstrap tooltip instance
घटनाहरू
घटना प्रकार | विवरण |
---|---|
show.bs.tooltip |
show उदाहरण विधि बोलाउँदा यो घटना तुरुन्तै सक्रिय हुन्छ । |
shown.bs.tooltip |
यो घटना तब हटाइन्छ जब टूलटिप प्रयोगकर्तालाई देख्न सकिन्छ (CSS ट्रान्जिसनहरू पूरा हुनको लागि पर्खनेछ)। |
hide.bs.tooltip |
यो घटना तुरुन्तै निकालिएको छ जब hide उदाहरण विधि कल गरिएको छ। |
hidden.bs.tooltip |
यो घटना हटाइएको छ जब टुलटिप प्रयोगकर्ताबाट लुकाइएको समाप्त हुन्छ (CSS ट्रान्जिसनहरू पूरा हुनको लागि पर्खनेछ)। |
inserted.bs.tooltip |
यो घटना घटना पछि निकालिएको छ show.bs.tooltip जब टुलटिप टेम्प्लेट DOM मा थपिएको छ। |
var myTooltipEl = document.getElementById('myTooltip')
var tooltip = new bootstrap.Tooltip(myTooltipEl)
myTooltipEl.addEventListener('hidden.bs.tooltip', function () {
// do something...
})
tooltip.hide()