ツールチップ(Tooltips) v5.0.0設定変更
CSS3を使ってCSS3とアニメーション用のカスタムBootstrapツールチップを追加し、ローカルタイトルストレージ用のデータ属性を追加するための解説と例。
※"v5.0.0"での変更はv5.0.0-alpha版、v5.0.0-beta版での変更も含みます。
※"v5.3.0"での変更はv5.3.0-alpha版での変更も含みます。
概要(Overview)
ツールチップ・プラグインを使用するときに知っておくべきこと:
- ツールチップは、サードパーティのライブラリであるPopperを利用して位置情報を取得している。ツールチップが動作するためには、
bootstrap.min.js
の前にpopper.min.jsを組み込むか、Popperを中に組み込んでいるbootstrap.bundle.min.js
を使用する必要がある。 - ツールチップは、パフォーマンス上の理由で任意で取得されるため、自分で初期化する必要がある(そのため実行コードが必要)。
title
の長さがゼロのツールチップは表示されない。container: 'body'
を指定すると、より複雑なコンポーネント(インプットグループやボタングループなど)のレンダリングの問題が回避できる。- 非表示要素のツールチップは機能しない。
.disabled
やdisabled
要素のツールチップは、それを囲む要素で起動する必要がある。サンプル- 複数行にまたがるハイパーリンクから起動されると、ツールチップは中央に配置されるので、この動作を回避するには、
<a>
に.text-nowrap
をご使用下さい。 - ツールチップは、対応する要素がDOMから削除される前に非表示にする必要がある。
- ツールチップは、シャドウDOM内の要素のために起動できる。
prefers-reduced-motion
メディアクエリに依存。詳細はアクセシビリティのモーションを小さくするに記載。
実例(Examples)v5.2.0デザイン変更
ツールチップを有効にする(Enable tooltips)v5.2.0設定変更
前記のように、ツールチップを使用する前に初期化する必要がある。ページ上のすべてのツールチップを初期化する1つの方法は、次のように data-bs-toggle
属性で選択:
Bootstrap5.2.0の実行コード例 緑背景が5.2.0での変更箇所
JavaScriptconst tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]')
const tooltipList = [...tooltipTriggerList].map(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl))
※Bootstrap5.1.3の実行コード例 赤背景が5.2.0での変更箇所
JavaScriptvar tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
return new bootstrap.Tooltip(tooltipTriggerEl)
})
※Bootstrap4.xの実行コード例
JavaScript$(function () {
$('[data-bs-toggle="tooltip"]').tooltip()
})
【設定】
bootstrap.min.js
より前に Popper の設定が必要(バンドル版のbootstrap.bundle.min.js
のみでも可)
※ 各jsファイルをCDNで設置する方法は、クイックスタートに記載
【変更履歴】
- 【v5.0.0-alpha1】
- JavaScriptの記述をjQueryに依存しない方法に変更
- 【v5.2.0】
- JavaScriptの記述をES6(ES2015)に変更
リンク上のツールチップ(Tooltips on links)v5.0.0-beta1設定変更
ツールチップを表示するには、以下のリンクにカーソルを合わせること:
見本
ツールチップを使用した横並びリンクを示すプレースホルダテキスト。これは今では単なるつなぎであり、大層なものではない。実際のテキストの存在を模倣するためだけにここに配置されたコンテンツである。そして、これらすべては、実際の状況で使用したときにツールチップがどのように見えるかを示すためのもの。従って、リンク上のこれらのツールチップを自分のサイトやプロジェクトで使用すると、実際にどのように機能するか理解できると思う。
Bootstrap5.xの設定例 緑背景が変更箇所
HTML<p class="muted">ツールチップを使用した<a href="#" data-bs-toggle="tooltip" title="デフォルトのツールチップ">横並びリンク</a>を示すプレースホルダテキスト。これは今では単なるつなぎであり、大層なものではない。<a href="#" data-bs-toggle="tooltip" title="もう一つのツールチップ">実際のテキスト</a>の存在を模倣するためだけにここに配置されたコンテンツである。そして、これらすべては、実際の状況で使用したときにツールチップがどのように見えるかを示すためのもの。従って、<a href="#" data-bs-toggle="tooltip" title="ここにももう1つ">リンク上のこれらのツールチップ</a>を自分のサイトやプロジェクトで使用すると、実際に<a href="#" data-bs-toggle="tooltip" title="最後のツールチップ!">どのように機能</a>するか理解できると思う。</p>
title
か data-bs-title
のいずれかを自由にご使用下さい。title
が使用されている場合、要素がレンダリングされるときに、Popperは自動的にそれを data-bs-title
に置き換える。
【設定】
a[href="#"][data-bs-toggle="tooltip"][title="ツールチップ文"]
[title]
は[data-bs-title]
でも可
【変更履歴】
- 【v5.0.0-beta1】
data-
属性に名前空間bs-
を追加[data-toggle="tooltip"]
⇒[data-bs-toggle="tooltip"]
- 【v5.2.0】
border-radius
の値を調整したので、若干丸みを帯びたデザインに変更
カスタムツールチップ(Custom tooltips)v5.2.0新設
CSS変数を使用して、ツールチップの外観をカスタマイズできる。data-bs-custom-class="custom-tooltip"
を使用してカスタムクラスを設定し、カスタムの外観を調査し、それを使用してローカルのCSS変数を再定義。
ツールチップの外観をPrimaryにする例
見本
設定例
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" title="このツールチップは、CSS変数をテーマにしている。">
カスタムツールチップ
</button>
ツールチップの方向設定(Directions)v5.0.0-beta1設定変更
1.上、右、下、左の方向にツールチップを表示
下のボタンにカーソルを合わせると、上、右、下、左の4つのツールチップの指示が表示。RTL(右書き)でBootstrapを使用すると、方向が反転する。
見本
Bootstrap5.xの設定例 緑背景が変更箇所
上に出るツールチップ<button type="button" class="btn btn-secondary mb-2 mb-md-0" data-bs-toggle="tooltip" data-bs-placement="top" title="上に出るツールチップ">ツールチップ(上)</button>
右に出るツールチップ<button type="button" class="btn btn-secondary mb-2 mb-md-0" data-bs-toggle="tooltip" data-bs-placement="right" title="右に出るツールチップ">ツールチップ(右)</button>
下に出るツールチップ<button type="button" class="btn btn-secondary mb-2 mb-md-0" data-bs-toggle="tooltip" data-bs-placement="bottom" title="下に出るツールチップ">ツールチップ(下)</button>
左に出るツールチップ<button type="button" class="btn btn-secondary mb-2 mb-md-0" data-bs-toggle="tooltip" data-bs-placement="left" title="左に出るツールチップ">ツールチップ(左)</button>
【設定】
data-bs-toggle="tooltip"
と同じ要素にdata-bs-placement="xxx"
(xxx
はleft
(左)、top
(上)、bottom
(下)、right
(右)の中から選択)を入れる
【変更履歴】
- 【v5.0.0-beta1】
data-
属性に名前空間bs-
を追加[data-toggle="tooltip"]
⇒[data-bs-toggle="tooltip"]
[data-placement="xxx"]
⇒[data-bs-placement="xxx"]
2. HTML付きツールチップ
カスタムHTMLを追加:
見本
設定例
<button type="button" class="btn btn-secondary" data-bs-toggle="tooltip" data-bs-html="true" title="<b>HTML</b><u>付き</u><em>ツールチップ</em>">
HTML付きツールチップ
</button>
【設定】
title
にHTMLを入れることも可能
【変更履歴】
- 【v5.0.0-beta1】
data-
属性に名前空間bs-
を追加[data-toggle="tooltip"]
⇒[data-bs-toggle="tooltip"]
[data-html="true"]
⇒[data-bs-html="true"]
3. SVGでのツールチップ v5.0.0-alpha2新設
見本
設定例
<a href="#" class="d-inline-block" data-bs-toggle="tooltip" title="通常のツールチップ">
<svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 100 100">
<rect width="100%" height="100%" fill="#563d7c"/>
<circle cx="50" cy="50" r="30" fill="#007bff"/>
</svg>
</a>
【設定】
- ツールチップのリンク内にSVG画像の利用が可能
CSS v5.0.0-beta3追加、v5.2.0Sassから名称変更
CSS変数(Variables)v5.2.0新設
Bootstrapの進化するCSS変数アプローチの一環として、ツールチップは、リアルタイムのカスタマイズを強化するために、.tooltip
でローカルCSS変数を使用するようにした。CSS変数の値はSassを経由して設定されるため、Sassのカスタマイズも引き続きサポートされる。
デフォルトの設定
scss/_tooltip.scss 内 tooltip-css-vars の設定--#{$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変数(Sass variables)v5.2.0変数から名称変更
デフォルトの設定
scss/_variables.scss 内 tooltip-variables の設定$tooltip-font-size: $font-size-sm;
$tooltip-max-width: 200px;
$tooltip-color: var(--#{$prefix}body-bg);
$tooltip-bg: var(--#{$prefix}emphasis-color);
$tooltip-border-radius: var(--#{$prefix}border-radius);
$tooltip-opacity: .9;
$tooltip-padding-y: $spacer * .25;
$tooltip-padding-x: $spacer * .5;
$tooltip-margin: null; // v6でのTODO: これを削除
$tooltip-arrow-width: .8rem;
$tooltip-arrow-height: .4rem;
// fusv-disable
$tooltip-arrow-color: null; // Bootstrap5.2.0では非推奨のCSS変数
// fusv-enable
【変更履歴】
- 【v5.2.0】
- 使用する変数の削減により
$tooltip-arrow-color
は非推奨に
- 使用する変数の削減により
使用方法(Usage)v5.2.0設定変更
ツールチッププラグインは、必要に応じてコンテンツとマークアップを生成し、デフォルトでは起動要素の後にツールチップを置く。ツールチップの起動はJavaScriptで行う:
Bootstrap5.2.0~の設定例 緑背景が5.2.0での変更箇所
JavaScriptconst exampleEl = document.getElementById('example')
const tooltip = new bootstrap.Tooltip(exampleEl, options)
※Bootstrap5.1.xの設定例 赤背景が5.2.0での変更箇所
JavaScriptvar exampleEl = document.getElementById('example')
var tooltip = new bootstrap.Tooltip(exampleEl, options)
※Bootstrap4.xの設定例
JavaScript$('#example').tooltip(options)
【変更履歴】
- 【v5.0.0-alpha1】
- JavaScriptの記述をjQueryに依存しない方法に変更
- 【v5.2.0】
- JavaScriptの記述をES6(ES2015)に変更
ツールチップは、親コンテナが overflow: auto
か overflow: scroll
を持つとき自動的に位置を変更しようとするが、それでも元の配置の位置は維持される。boundary
オプション(popperConfig
オプションによるフリップ修飾子の場合)を任意のHTML要素に設定し、document.body
のようにデフォルト値である 'clippingParents'
を再定義する:
JavaScriptconst tooltip = new bootstrap.Tooltip('#example', {
boundary: document.body // または document.querySelector('#boundary')
})
マークアップ(Markup)
ツールチップに必要なマークアップは、ツールチップを表示したいHTML要素に data
属性と title
をつけるだけ。生成されるツールチップのマークアップはかなりシンプルだが、表示される位置の設定が必要(デフォルトでは、プラグインによって top
に設定)。
tabindex="0"
を追加することによってフォーカス可能にできるが、これはキーボードユーザーにとって非対話型の要素に迷惑で紛らわしいタブストップが生じる可能性があり、現在ほとんどの支援技術はこの状況下でツールチップを発動しない。さらにツールチップの起動を hover
だけに依存しないこと。これは、キーボードユーザーにとって起動ができなくなる。
<!--HTMLコードの記載 -->
<a href="#" data-bs-toggle="tooltip" title="いくつかのツールチップテキスト!">この上にマウスポインタを移動</a>
<!-- プラグインによる一般的なマークアップ -->
<div class="tooltip bs-tooltip-top bs-tooltip-top-docs" role="tooltip">
<div class="tooltip-arrow"></div>
<div class="tooltip-inner">
いくつかのツールチップテキスト!
</div>
</div>
無効な要素(Disabled elements)v5.0.0-beta2設定変更
disabled
属性を持つ要素はインタラクティブではないため、ユーザーがフォーカス、ホバー、クリックしてツールチップ(またはポップオーバー)を起動できない。回避策として tabindex="0"
を使用して理想的にキーボードフォーカスを可能にしたラッピング要素の <div>
や <span>
からツールチップを起動する必要がある。
見本
Bootstrap5.xの設定例 緑背景が変更箇所
<span class="d-inline-block" tabindex="0" data-bs-toggle="tooltip" title="無効ボタンのツールチップ">
<button type="button" class="btn btn-primary" disabled>無効ボタン</button>
</span>
※Bootstrap4.xの設定例 赤背景が変更箇所
<span class="d-inline-block" tabindex="0" data-toggle="tooltip" title="無効ボタンのツールチップ">
<button class="btn btn-primary" style="pointer-events: none;" type="button" disabled>無効ボタン</button>
</span>
【変更履歴】
- 【v5.0.0-beta1】
data-
属性に名前空間bs-
を追加[data-toggle="tooltip"]
⇒[data-bs-toggle="tooltip"]
- 【v5.0.0-beta2】
[style="pointer-events: none;"]
の設定を削除
オプション(Options)v5.0.0-beta1オプション追加、v5.0.0-beta2一部変更
オプションは、データ属性かJavaScriptを経由して渡すことができるため、data-bs-animation="{value}"
のように、オプション名を data-bs-
に追加できる。データ属性を経由してオプションを渡す場合は、必ずオプション名の命名規則をキャメルケース(単語の先頭を大文字にする)からケバブケース(単語をハイフンでつなぐ)にご変更下さい。例:data-bs-customClass="beautifier"
ではなく、data-bs-custom-class="beautifier"
を使用する。
Bootstrap 5.2.0以降、すべてのコンポーネントは、JSON文字列として単純なコンポーネント構成を格納できる実験的な予約済データ属性 data-bs-config
をサポート。要素に data-bs-config='{"delay":0, "title":123}'
と data-bs-title="456"
属性がある場合、最終的な title
値は 456
になり、個別のデータ属性は data-bs-config
で指定された値を再定義する。さらに、既存のデータ属性には、data-bs-delay='{"show":0,"hide":150}'
のようなJSON値を格納できる。
allowList
, sanitize
, sanitizeFn
オプションは、データ属性を使用して指定できない。
名前 | タイプ | デフォルト | 説明 |
---|---|---|---|
allowList v5.0.0-alpha2名称変更 |
object | デフォルト値 | 許可された属性とタグを含むオブジェクト |
animation |
boolean | true |
ツールチップにCSSのフェード遷移を適用true :有効/false :無効 |
boundary v5.0.0-beta2変更 |
string | element | 'clippingParents' |
ツールチップのオーバーフローを制約する境界(PopperのpreventOverflow修飾子にのみ適用)。デフォルトでは 'clippingParents' であり、HTMLElementリファレンスが受け入れ可能(JavaScript経由のみ)。詳細については、PopperのpreventOverflowドキュメントに記載。 |
container |
string | element | false | false |
ツールチップを特定の要素に追加。例:container: 'body' このオプションでは、ウィンドウサイズ変更時にツールチップがトリガー要素から浮かないようにし、トリガー要素の近くにツールチップの配置を可能にするという点で特に便利。 |
customClass v5.0.0-beta1追加 |
string | function | '' |
表示されたら、ツールチップにクラスを追加するには、それらをスペースで区切る:'class-1 class-2' 追加のクラス名を含む単一の文字列を返す関数を渡すことも可能。 |
delay |
number | object | 0 |
ツールチップの表示と非表示の遅延時間(1000分の1秒単位) - triggerでmanualを指定した場合は適用されない。 数字が指定された場合、hide/showの両方に遅延が適用。 オブジェクト構造は次のとおり: delay: { "show": 500, "hide": 100 } |
fallbackPlacements v5.0.0-beta2変更 |
array | ['top', 'right', 'bottom', 'left'] |
配列内の配置のリストを(優先順に)提供することにより、フォールバック配置を定義。詳細については、Popperのbehaviorドキュメントに記載。 |
html |
boolean | false |
ツールチップにHTMLを許可。 trueの場合、ツールチップの title のHTMLタグがツールチップに表示される。falseの場合、innerText プロパティがコンテンツをDOMに挿入するために使用される。XSS攻撃が心配な場合はテキストをご使用下さい。 true :有効/false :無効 |
offset v5.0.0-beta2復活 |
array | string | function | [0, 0] |
ターゲットに対するツールチップのオフセット値。 関数を使用してオフセットを決定する場合、Popperの配置、参照とPopperの四角形を最初の引数として含むオブジェクトを使用して呼び出される。トリガー要素のDOMノードが2番目の引数として渡される。関数は、2つの数値を持つ配列を返す必要がある:[スキッド, 距離] 詳細については、Popper.jsのoffsetドキュメントに記載。 |
placement |
string | function | 'top' |
ツールチップの配置方法 - auto | top | bottom | left | rightauto が指定されると、動的にツールチップの向きが変更。function配置を決定するために使用されるとき、ツールチップDOMノードを第1引数として、起動要素DOMノードを第2引数として呼び出す。 this コンテキストは、ツールチップヒントインスタンスに設定される。 |
popperConfig v5.0.0-beta2変更 |
null | object | function | null |
BootstrapのデフォルトのPopperの構成を変更。詳細は、Popperの構成に記載。 関数を使用してPopper構成を作成すると、BootstrapのデフォルトのPopper構成を含むオブジェクトで呼び出される。これは、デフォルトを使用して独自の構成とマージするのに役立つ。この関数は、Popperの構成オブジェクトを返す必要がある。 |
sanitize |
boolean | true |
サニタイズを有効/無効にする。有効にすると、'template' , 'content' , 'title' オプションはサニタイズされる。true :有効/false :無効 |
sanitizeFn |
null | function | null |
自分用のサニタイズ機能を提供できる。サニタイズを実行するために専用のライブラリを使用したい場合に役立つ。詳細は、JavaScriptのサニタイザーに記載。 |
selector |
string | false | false |
セレクタが提供された場合、ツールチップオブジェクトは指定されたターゲットに付与される。実際には、動的に追加されるDOM要素にもツールチップを適用するために使用される(jQuery.on のサポート)。ココと有益な実例に記載。注意:title 属性はセレクタとして使用しないこと。 |
template v5.0.0-alpha1一部変更 |
string | '<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 |
string | element | function | '' |
ツールチップのタイトル。 functionを設定した場合、 this 参照セットをツールチップが接続されている要素にセットして呼び出される。 |
trigger |
string | 'hover focus' |
ツールチップの起動方法 - click | hover | focus | manual 複数の起動方法を指定:スペースで区切る。 'manual' は、.show() , .hide() , .toggle() メソッドを使用して、ツールチップがプログラムによって起動されるようにする。この値を他の起動方法と組み合わせられない。'hover' を単独で使用すると、キーボードでは操作できないツールチップが表示されるので、キーボードユーザーに対して同じ情報を伝達するための代替方法が存在する場合にのみ使用する必要がある。 |
個々のツールチップのデータ属性
上記で説明したように、個々のツールチップのオプションは、データ属性(data-bs-オプション名
)を使用して指定できる(sanitize
, sanitizeFn
, allowList
を除く)。
popperConfig
でfunctionを使用 v5.0.0-beta2追加
Bootstrap5.2.0~の設定例 緑背景が5.2.0での変更箇所
JavaScriptconst tooltip = new bootstrap.Tooltip(element, {
popperConfig(defaultBsPopperConfig) {
// const newPopperConfig = {...}
// 必要に応じてdefaultBsPopperConfigを使用...
// newPopperConfigを返す
}
})
※Bootstrap5.1.xの設定例 赤背景が5.2.0での変更箇所
var tooltip = new bootstrap.Tooltip(element, {
popperConfig: function (defaultBsPopperConfig) {
// var newPopperConfig = {...}
// 必要に応じてdefaultBsPopperConfigを使用...
// newPopperConfigを返す
}
})
【変更履歴】
- 【v5.0.0-alpha1】
template
のうち.arrow
は.tooltip-arrow
に名称変更
- 【v5.0.0-alpha2】
whiteList
はallowList
に名称変更
- 【v5.0.0-beta1】
customClass
が追加(v4.6.0でバックポート)- Popper v2対応により、
offset
は廃止fallbackPlacement
はfallbackPlacements
に変更し、設定タイプからstringが廃止され、デフォルト値が'flip'
からnull
に変更
- 【v5.0.0-beta2】
fallbackPlacements
で要素の配置を改善するため、設定タイプをarray
に、デフォルト値を['top', 'right', 'bottom', 'left']
に変更boundary
のデフォルトの設定がscrollParent
からclippingParent
に変更offset
を復活popperConfig
のタイプにfunction
を追加
- 【v5.2.0】
- JavaScriptの記述をES6(ES2015)に変更
メソッド(Methods)v5.0.0-alpha1設定変更、v5.0.2メソッド追加
メソッド | 説明 |
---|---|
disable |
要素のツールチップが表示されるようにする機能を削除。ツールチップは、再度有効になっている場合にのみ表示できる。 |
dispose |
要素のツールチップを非表示にしたり破棄したりする(DOM要素に保存されているデータを削除)。(selector オプションを使用して作成される)デリゲートを使用するツールチップは、子孫トリガー要素で個別に破棄できない。 |
enable |
要素のツールチップに表示する機能を与える。デフォルトで有効。 |
getInstance |
DOM要素に関連付けられたツールチップ・インスタンスを取得できる静的メソッド |
getOrCreateInstance v5.0.2追加 |
DOM要素に関連付けられたツールチップ・インスタンスを取得したり、初期化されていない場合に新しいインスタンスを作成したりできる静的メソッド。 |
hide |
要素のツールチップを非表示にする。ツールチップが実際に非表示になる前(つまり hidden.bs.tooltip イベント発動前)に呼び出し元に戻る。これは、ツールチップの"manual"トリガーとみなされる。 |
setContent v5.2.0追加 |
初期化後にツールチップのコンテンツを変更する方法を提供。 |
show |
要素のツールチップを表示。実際にツールチップが表示される前(つまり shown.bs.tooltip イベント発動前)に呼び出し元に戻る。これは、ツールチップの"manual"トリガーとみなされる。タイトルが長さゼロのツールチップは表示されない。 |
toggle |
要素のツールチップを切り替える。ツールチップが実際に表示や非表示になる前(つまり shown.bs.tooltip や hidden.bs.tooltip イベント発動前)に呼び出し元に戻る。これは、ツールチップの"manual"トリガーとみなされる。 |
toggleEnabled |
要素のツールチップが表示や非表示になるように切り替える。 |
update |
要素のツールチップの位置を更新。 |
Bootstrap5.2.0~の設定例 緑背景が5.2.0での変更箇所
JavaScript// getOrCreateInstanceの実例
const tooltip = bootstrap.Tooltip.getInstance('#example') // Bootstrapツールチップインスタンスを返す
// setContentの実例
tooltip.setContent({ '.tooltip-inner': '別のタイトル' })
※Bootstrap5.1.xの設定例 赤背景が5.2.0での変更箇所
JavaScript// getOrCreateInstanceの実例
var exampleTriggerEl = document.getElementById('example')
var tooltip = bootstrap.Tooltip.getOrCreateInstance(exampleTriggerEl)
// setContentの実例
tooltip.setContent({ '.tooltip-inner': '別のタイトル' })
setContent
メソッドは object
引数を受け入れる。各プロパティキーはツールチップテンプレート内の有効な string
セレクタであり、関連する各プロパティ値は string
| element
| function
| null
にできる。
【変更履歴】
- 【v5.0.0-alpha1】
$().tooltip('xxx')
⇒tooltip.xxx()
getInstance
メソッドが追加
- 【v5.0.2】
getOrCreateInstance
メソッドが追加
- 【v5.2.0】
setContent
メソッドが追加- JavaScriptの記述をES6(ES2015)に変更
イベント(Events)
イベントタイプ | 説明 |
---|---|
hide.bs.tooltip |
hide のインスタンス・メソッドが呼び出されると直ちに発動。 |
hidden.bs.tooltip |
ツールチップがユーザーから非表示になったときに発動(完全にCSS遷移が完了するまで待機)。 |
inserted.bs.tooltip |
ツールチップテンプレートがDOMに追加されたときに show.bs.tooltip イベントの後に発動。 |
show.bs.tooltip |
show のインスタンス・メソッドが呼び出されると直ちに発動。 |
shown.bs.tooltip |
ユーザーにツールチップが表示されたときに発動(完全にCSS遷移が完了するまで待機)。 |
使用例 v5.2.0設定変更
JavaScriptconst myTooltipEl = document.getElementById('myTooltip')
const tooltip = bootstrap.Tooltip.getOrCreateInstance(myTooltipEl)
myTooltipEl.addEventListener('hidden.bs.tooltip', () => {
// 何かをする...
})
tooltip.hide()
ページ移動
ページがありません