टूलटिप्स
एनिमेषन् कृते CSS3 इत्यस्य उपयोगेन CSS तथा JavaScript इत्यनेन सह कस्टम् Bootstrap tooltips योजयितुं दस्तावेजीकरणं उदाहरणानि च स्थानीयशीर्षकभण्डारणार्थं data-attributes इत्येतयोः कृते।
अवलोकनम्
tooltip plugin इत्यस्य उपयोगं कुर्वन् ज्ञातव्यानि वस्तूनि:
- Tooltips स्थितिनिर्धारणार्थं 3rd party library Popper इत्यस्य उपरि अवलम्बन्ते । भवन्तः bootstrap.js इत्यस्मात् पूर्वं popper.min.js इत्येतत् अवश्यमेव समाविष्टं कुर्वन्तु अथवा
bootstrap.bundle.min.js
/ इत्यस्य उपयोगं कुर्वन्तुbootstrap.bundle.js
यस्मिन् Popper अस्ति यत् टूल्टिप्स कार्यं कर्तुं शक्नोति! - यदि भवान् अस्माकं जावास्क्रिप्ट् स्रोततः निर्माति तर्हि तस्य आवश्यकता
util.js
अस्ति . - Tooltips कार्यप्रदर्शनकारणात् opt-in भवन्ति, अतः भवान् स्वयमेव तान् आरभणीयम् .
- शून्य-दीर्घता-शीर्षक-युक्ताः उपकरण-टिप्स् कदापि न प्रदर्शिताः भवन्ति ।
container: 'body'
अधिकजटिलघटकेषु (यथा अस्माकं निवेशसमूहाः, बटनसमूहाः इत्यादयः) रेण्डरिंगसमस्याः परिहरितुं निर्दिशन्तु ।- गुप्ततत्त्वेषु उपकरणसूचनानि प्रेरयितुं कार्यं न भविष्यति ।
.disabled
अथवा एलिमेण्ट्स् कृते टूल्टिप्स्disabled
एकस्मिन् wrapper एलिमेण्ट् इत्यत्र अवश्यमेव ट्रिगर करणीयम् ।- बहुपङ्क्तयः विस्तृताः हाइपरलिङ्क्-तः प्रेरिताः भवन्ति चेत्, टूल्टिप्स केन्द्रीकृताः भविष्यन्ति । एतत् व्यवहारं परिहरितुं
white-space: nowrap;
भवतः s इत्यस्य उपयोगं कुर्वन्तु।<a>
- DOM तः तेषां तत्सम्बद्धानां तत्त्वानां निष्कासनात् पूर्वं टूलटिप्स अवश्यमेव गोपनीया ।
- छाया DOM इत्यस्य अन्तः एकस्य एलिमेण्ट् इत्यस्य धन्यवादेन टूल्टिप् ट्रिगर कर्तुं शक्यते ।
prefers-reduced-motion
मीडिया-प्रश्नस्य उपरि निर्भरः भवति । अस्माकं सुलभतादस्तावेजस्य न्यूनीकृतगतिविभागं पश्यन्तु
.
तत् सर्वं प्राप्तम् ? महान्, पश्यामः यत् ते केनचित् उदाहरणैः सह कथं कार्यं कुर्वन्ति।
उदाहरणम् : सर्वत्र टूलटिप्स् सक्षमं कुर्वन्तु
पृष्ठे सर्वाणि साधनसूचनानि आरम्भयितुं एकः उपायः स्यात् यत् तेषां data-toggle
विशेषताद्वारा चयनं करणीयम्:
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
उदाहरणानि
उपकरणसूचनानि द्रष्टुं अधोलिङ्कानि उपरि माउसं कुर्वन्तु:
उपकरणसूचनैः सह केचन इनलाइनलिङ्कानि प्रदर्शयितुं स्थानधारकपाठः । इदं इदानीं केवलं पूरकम्, न घातकः। केवलं वास्तविकपाठस्य उपस्थितेः अनुकरणार्थं अत्र स्थापिता सामग्री . तथा च तत् सर्वं केवलं भवन्तं विचारं दातुं यत् वास्तविक-जगतः परिस्थितिषु उपयुज्यमानाः साधन-सूचनानि कथं दृश्यन्ते इति। अतः आशास्ति यत् भवान् इदानीं दृष्टवान् यत् लिङ्क्-विषये एतानि साधन-सूचनानि कथं व्यवहारे कार्यं कर्तुं शक्नुवन्ति, एकवारं भवान् स्वस्य साइट्-स्थाने वा परियोजनायां वा तान् उपयुज्यते ।
उपरि, दक्षिणं, अधः, वामं च इति चत्वारि साधनसूचनानि द्रष्टुं अधोलिखितानां बटन्-उपरि माउण्ड् कुर्वन्तु ।
<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>
प्रयोगः
टूल्टिप् प्लगिन् आग्रहेण सामग्रीं मार्कअपं च जनयति, पूर्वनिर्धारितरूपेण च तेषां ट्रिगर एलिमेण्ट् इत्यस्य अनन्तरं टूल्टिप् स्थापयति ।
जावास्क्रिप्ट् मार्गेण टूलटिप् ट्रिगरं कुर्वन्तु:
$('#example').tooltip(options)
अतिप्रवाहः auto
चscroll
Tooltip स्थितिः स्वयमेव परिवर्तयितुं प्रयतते यदा मातापितृपात्रस्य अस्माकं भवति overflow: auto
वा overflow: scroll
इव .table-responsive
, परन्तु तदपि मूलस्थापनस्य स्थितिं धारयति । समाधानार्थं, boundary
विकल्पं पूर्वनिर्धारितमूल्यात् परं किमपि सेट् कुर्वन्तु, 'scrollParent'
, यथा 'window'
:
$('#example').tooltip({ boundary: 'window' })
मार्कअप
टूल्टिप् कृते आवश्यकं मार्कअपं केवलं data
एट्रिब्यूट् भवति तथा title
च HTML एलिमेण्ट् इत्यत्र भवान् टूल्टिप् प्राप्तुम् इच्छति । टूल्टिप् इत्यस्य उत्पन्नं मार्कअपं तु सरलं भवति, यद्यपि तस्य कृते स्थितिः आवश्यकी भवति (पूर्वनिर्धारितरूपेण, top
प्लगिन् द्वारा सेट् भवति) ।
कीबोर्डस्य सहायकप्रौद्योगिकीप्रयोक्तृणां च कृते टूलटिप्स कार्यं कर्तुं करणम्
भवद्भिः केवलं HTML-तत्त्वेषु उपकरणसूचनानि योजितव्यानि ये पारम्परिकरूपेण कीबोर्ड-केन्द्रीकरणीयाः सन्ति तथा च अन्तरक्रियाशीलाः सन्ति (यथा लिङ्क् अथवा रूपनियन्त्रणानि) । यद्यपि मनमाना HTML तत्त्वानि (यथा <span>
s) विशेषतां योजयित्वा केन्द्रीकृतानि कर्तुं शक्यन्ते 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
अन्तरक्रियाशीलाः न सन्ति, अर्थात् उपयोक्तारः उपकरणटिप् (अथवा popover) प्रेरयितुं तान् केन्द्रीक्रियितुं, माउस-करणं, क्लिक् कर्तुं वा न शक्नुवन्ति । एकं कार्यपरिहाररूपेण, भवान् एकस्मात् आवरणात् <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>
विकल्पाः
विकल्पाः data attributes अथवा JavaScript मार्गेण पारयितुं शक्यन्ते । दत्तांशविशेषतानां कृते, विकल्पनाम , इत्यत्र data-
योजयन्तु data-animation=""
।
sanitize
,
sanitizeFn
तथा
whiteList
विकल्पाः दत्तांशविशेषतानां उपयोगेन आपूर्तिं कर्तुं न शक्यन्ते ।
नामः | प्रकारः | मूलभूतम् | वर्णनम् |
---|---|---|---|
एनिमेशन | बूलियन इति | सत्यम् | टूल्टिप् मध्ये CSS fade संक्रमणं प्रयोजयन्तु |
पात्रम् | तार | तत्व | असत्य | असत्य | विशिष्टे तत्त्वे टूल्टिप् योजयति । उदाहरणम् : |
विलम्बः | संख्या | वस्तु | ० | टूल्टिप् (ms) दर्शयितुं गोपयितुं च विलम्बः - मैनुअल् ट्रिगर प्रकारस्य कृते न प्रवर्तते यदि सङ्ख्या प्रदत्ता भवति तर्हि hide/show इति द्वयोः कृते विलम्बः प्रयुक्तः भवति वस्तुसंरचना अस्ति : १. |
html | बूलियन इति | असत्य | टूल्टिप् मध्ये HTML इत्यस्य अनुमतिं ददातु । यदि सत्यं भवति तर्हि tooltip's मध्ये HTML टैग्स् टूल्टिप् यदि भवान् XSS आक्रमणानां विषये चिन्तितः अस्ति तर्हि पाठस्य उपयोगं कुर्वन्तु। |
स्थापनम् | तार | नियोग | 'उपरितन' | टूलटिप् कथं स्थापयितव्यम् - auto | शीर्ष | तले | वाम | दक्षिणः। यदा कश्चन फंक्शन् प्लेसमेण्ट् निर्धारयितुं प्रयुक्तः भवति तदा तत् tooltip DOM node इत्यनेन प्रथमं आर्गुमेण्ट् रूपेण, ट्रिगरिंग एलिमेण्ट् DOM node इत्यनेन च द्वितीयं कृत्वा आह्वयते । सन्दर्भः |
चयनकर्ता | तार | असत्य | असत्य | यदि चयनकर्ता प्रदत्तः अस्ति तर्हि निर्दिष्टलक्ष्याणां कृते टूल्टिप् ऑब्जेक्ट्स् प्रत्यायिताः भविष्यन्ति । व्यवहारे, एतस्य उपयोगः गतिशीलरूपेण योजितानां DOM तत्त्वानां ( jQuery.on support) कृते उपकरणसूचनानि अपि प्रयोक्तुं भवति । एतत् एकं च सूचनाप्रदं उदाहरणं पश्यन्तु . |
टेम्पलेट | सूत्र | '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>' |
टूलटिप् निर्मायन्ते सति उपयोक्तुं HTML आधारं कुर्वन्तु । tooltip's इत्यस्य
बाह्यतमस्य आवरणतत्त्वस्य |
शीर्षक | तार | तत्व | नियोग | '' इति । |
|
प्रवर्त्यम् | सूत्र | 'होवर फोकस' इति । | टूलटिप् कथं ट्रिगर भवति - | भ्रमति | फोकस | शास्त्र। भवान् बहुविधं ट्रिगरं उत्तीर्णं कर्तुं शक्नोति; तान् अन्तरिक्षेण पृथक् कुर्वन्तु।
|
offset इति | संख्या | तार | नियोग | ० | तस्य लक्ष्यस्य सापेक्षं टूलटिप् इत्यस्य ऑफसेट् । यदा कस्मिंश्चित् फंक्शन् इत्यस्य उपयोगः ऑफसेट् निर्धारयितुं भवति तदा तस्य प्रथमं आर्गुमेण्ट् रूपेण offset data युक्तेन ऑब्जेक्ट् इत्यनेन सह आह्वयते । फंक्शन् इत्यनेन समानसंरचनायुक्तं वस्तु प्रेषितव्यम् । ट्रिगरिंग् एलिमेण्ट् DOM नोड् द्वितीयं आर्गुमेण्ट् रूपेण पारितं भवति । अधिकविवरणार्थं Popper's offset docs पश्यन्तु । |
fallbackस्थापनम् | तार | सरणी | 'पर्यस्' | Fallback इत्यत्र Popper इत्यस्य उपयोगः कस्य स्थानस्य उपयोगं करिष्यति इति निर्दिष्टुं अनुमन्यताम् । अधिकविवरणार्थं Popper's behavior docs पश्यन्तु |
customClass इति | तार | नियोग | '' इति । | यदा दर्शितं भवति तदा टूल्टिप् मध्ये क्लास्स् योजयन्तु । ध्यानं कुर्वन्तु यत् एते वर्गाः टेम्पलेट् मध्ये निर्दिष्टानां केषाञ्चन वर्गानां अतिरिक्तं योजिताः भविष्यन्ति । अनेकवर्गान् योजयितुं तान् रिक्तस्थानैः पृथक् कुर्वन्तु: भवान् एकं फंक्शन् अपि पारयितुं शक्नोति यत् अतिरिक्तवर्गनामानि समाविष्टं एकं स्ट्रिंग् रिटर्न् कर्तव्यम् । |
सीमा | तार | तत्व | 'scrollParent' इति । | टूलटिप् इत्यस्य ओवरफ्लो बाध्यता सीमा । 'viewport' , 'window' , 'scrollParent' , अथवा HTMLElement सन्दर्भस्य मूल्यानि स्वीकुर्वति (केवलं JavaScript) । अधिकविवरणार्थं Popper इत्यस्य preventOverflow docs पश्यन्तु । |
सेनेटाइज करें | बूलियन इति | सत्यम् | सेनेटाइजेशनं सक्षमं निष्क्रियं वा कुर्वन्तु। यदि सक्रिय 'template' एवं 'title' विकल्पों को सेनेटाइज किया जाएगा। अस्माकं JavaScript documentation मध्ये sanitizer विभागं पश्यन्तु . |
whiteList इति | वस्तु | पूर्वनिर्धारितं मूल्यम् | वस्तु यस्मिन् अनुमतविशेषताः टैग् च सन्ति |
सेनिटाइजFn | शून्य | नियोग | लुप्तमूल्य | अत्र भवान् स्वस्य सेनिटाइज् फंक्शन् आपूर्तिं कर्तुं शक्नोति। यदि भवान् स्वच्छीकरणं कर्तुं समर्पितं पुस्तकालयं उपयोक्तुं रोचते तर्हि एतत् उपयोगी भवितुम् अर्हति । |
popperConfig इति | शून्य | वस्तु | लुप्तमूल्य | Bootstrap इत्यस्य पूर्वनिर्धारितं Popper config परिवर्तयितुं, Popper इत्यस्य विन्यासं पश्यन्तु |
व्यक्तिगतसाधनसूचनानां कृते दत्तांशविशेषताः
व्यक्तिगतसाधनसूचनानां विकल्पाः वैकल्पिकरूपेण दत्तांशगुणानां उपयोगेन निर्दिष्टुं शक्यन्ते, यथा उपरि व्याख्यातम् ।
विधियाँ
अतुल्यकालिक विधियाँ एवं संक्रमण
सर्वे एपिआइ विधिः अतुल्यकालिकः भवति तथा च संक्रमणं आरभते | ते संक्रमणस्य आरम्भमात्रेण परन्तु तस्य समाप्तेः पूर्वं आह्वानकर्तुः समीपं आगच्छन्ति | तदतिरिक्तं, संक्रमणघटकस्य उपरि एकः विधि-आह्वानः अवहेलितः भविष्यति .
$().tooltip(options)
एलिमेण्ट्-सङ्ग्रहे टूल्टिप्-हन्डलर् संलग्नं करोति ।
.tooltip('show')
एकस्य तत्त्वस्य टूल्टिप् प्रकाशयति । टूल्टिप् वास्तवतः दर्शितस्य पूर्वं (अर्थात् shown.bs.tooltip
घटना घटितुं पूर्वं) आह्वानकर्त्रे प्रत्यागच्छति । इदं टूलटिप् इत्यस्य “मैनुअल्” ट्रिगरिंग् इति मन्यते । शून्य-दीर्घता-शीर्षक-युक्ताः उपकरण-टिप्स् कदापि न प्रदर्शिताः भवन्ति ।
$('#element').tooltip('show')
.tooltip('hide')
कस्यचित् एलिमेण्ट् इत्यस्य टूल्टिप् गोपयति । टूल्टिप् वास्तवतः गोपनीयत्वात् पूर्वं (अर्थात् hidden.bs.tooltip
घटना घटितुं पूर्वं) आह्वानकर्त्रे प्रत्यागच्छति । इदं टूलटिप् इत्यस्य “मैनुअल्” ट्रिगरिंग् इति मन्यते ।
$('#element').tooltip('hide')
.tooltip('toggle')
कस्यचित् एलिमेण्ट् इत्यस्य टूल्टिप् टॉग्ल् करोति । टूल्टिप् वास्तवतः दर्शितस्य वा गोपनीयस्य वा पूर्वं (अर्थात् shown.bs.tooltip
or hidden.bs.tooltip
इवेण्ट् इत्यस्य भवितुं पूर्वं) आह्वानकर्त्रे प्रत्यागच्छति । इदं टूलटिप् इत्यस्य “मैनुअल्” ट्रिगरिंग् इति मन्यते ।
$('#element').tooltip('toggle')
.tooltip('dispose')
कस्यचित् तत्त्वस्य टूल्टिप् गोपयति, नष्टं च करोति । प्रत्यायोजनस्य उपयोगं कुर्वन्ति उपकरणटिप्स् (यत् विकल्पस्य उपयोगेन निर्मिताः सन्ति ) selector
वंशज -उद्दीपक-तत्त्वेषु व्यक्तिगतरूपेण नष्टुं न शक्यन्ते ।
$('#element').tooltip('dispose')
.tooltip('enable')
एकस्य तत्त्वस्य tooltip दर्शयितुं क्षमता ददाति । Tooltips पूर्वनिर्धारितरूपेण सक्षमाः सन्ति ।
$('#element').tooltip('enable')
.tooltip('disable')
तत्त्वस्य टूल्टिप् दर्शयितुं क्षमताम् अपसारयति । टूल्टिप् केवलं पुनः सक्षमीकरणे एव दर्शयितुं समर्थः भविष्यति ।
$('#element').tooltip('disable')
.tooltip('toggleEnabled')
तत्त्वस्य टूल्टिप् दर्शयितुं गोपनं वा कर्तुं क्षमताम् टॉग् करोति ।
$('#element').tooltip('toggleEnabled')
.tooltip('update')
कस्यचित् एलिमेण्ट् इत्यस्य टूल्टिप् इत्यस्य स्थितिं अद्यतनं करोति ।
$('#element').tooltip('update')
घटनाः
घटना प्रकार | वर्णनम् |
---|---|
show.bs.tooltip इति दर्शयतु | एषा घटना तत्क्षणमेव प्रज्वलति यदा show दृष्टान्तविधिः आह्वयते । |
दर्शितम्.bs.tooltip | यदा उपकरणटिप् उपयोक्त्रे दृश्यमानं कृतम् अस्ति तदा एषा घटना प्रज्वलिता भवति (CSS संक्रमणानां पूर्णतां प्रतीक्षते) । |
hide.bs.tooltip इति | इदं घटना तत्क्षणमेव प्रज्वलितं भवति यदा उदाहरणविधिः hide आहूता अस्ति । |
hidden.bs.tooltip इति | यदा उपकरणटिप् उपयोक्त्रेण गोपनीयं समाप्तं भवति तदा एषा घटना प्रज्वलिता भवति (CSS संक्रमणानां पूर्णतां प्रतीक्षते) । |
सम्मिलितम्.bs.tooltip | show.bs.tooltip यदा DOM मध्ये tooltip template योजितं भवति तदा घटनायाः अनन्तरं एषा घटना निष्कासिता भवति । |
$('#myTooltip').on('hidden.bs.tooltip', function () {
// do something...
})