Bootstrap 弹出框(Popover)插件
ポップオーバー(Popover)はツールチップ(Tooltip)と似ており、拡張されたビューを提供します。ポップオーバーをアクティブにするには、ユーザーは要素にマウスポインターを置くだけです。ポップオーバーのコンテンツは完全に Bootstrap データ API(Bootstrap Data API)を使用して埋め込むことができます。このメソッドはツールチップ(tooltip)に依存しています。
このプラグインの機能を単独で参照したい場合は、以下を参照する必要があります。popover.js,它依赖于工具提示(Tooltip)插件。あるいは、まさにBootstrap 插件概览一章で述べたように、あなたは引用することができますbootstrap.jsまたは圧縮版のbootstrap.min.js。
用法
ポップオーバー(Popover)プラグインは、必要に応じてコンテンツとマークアップを生成し、デフォルトではポップオーバー(popover)をトリガー要素の後ろに配置します。ポップオーバー(popover)を追加するには、次の2つの方法があります。
- 通过 data 属性ポップオーバー(popover)を追加するには、アンカー/ボタンタグに追加するだけです。data-toggle="popover"それで十分です。アンカーの title がポップオーバー(popover)のテキストになります。デフォルトでは、プラグインはポップオーバー(popover)を上部に設定します。
<a href="../index.html" data-toggle="popover" title="Example popover"> 请悬停在我的上面 </a>
- 通过 JavaScript:JavaScript を使用してポップオーバー(popover)を有効にする:
$('#identifier').popover(options)
ポップオーバー(Popover)プラグインは、前述のドロップダウンメニューやその他のプラグインとは異なり、純粋な CSS プラグインではありません。このプラグインを使用するには、jQuery を使用してアクティブにする必要があります(javascript を参照)。以下のスクリプトを使用して、ページ内のすべてのポップオーバー(popover)を有効にします。
$(function () { $("[data-toggle='popover']").popover(); });
实例
以下の例は、data 属性を使用してポップオーバー(Popover)プラグインを利用する方法を示しています。
实例
尝试一下 »
結果は次のようになります:
选项
一部のオプションは、Bootstrap データ API(Bootstrap Data API)を介して追加されるか、JavaScript を介して呼び出されます。次の表にこれらのオプションを示します。
| 选项名称 | 类型/默认值 | Data 属性名 | 描述 |
|---|---|---|---|
| animation | boolean 默认值:true | data-animation | ポップオーバーに CSS フェード遷移効果を適用します。 |
| html | boolean 默认值:false | data-html | ポップオーバーに HTML を挿入します。false の場合、jQuery の text メソッドが DOM にコンテンツを挿入するために使用されます。XSS 攻撃が心配な場合は、text を使用してください。 |
| placement | string|function 默认值:top | data-placement | ポップオーバーの配置方法(top|bottom|left|right|auto)を指定します。 として指定された場合autoその場合、ポップオーバーが動的に調整されます。たとえば、placement が "auto left" の場合、ポップオーバーは可能な限り左に表示され、状況が許さない場合にのみ右に表示されます。 |
| selector | string 默认值:false | data-selector | セレクターが提供された場合、ポップオーバーオブジェクトは指定されたターゲットに委任されます。 |
| title | string | function 默认值:'' | data-title | 如果未指定title属性の場合、title オプションはデフォルトの title 値になります。 |
| trigger | string 默认值:'hover focus' | data-trigger | ポップオーバーのトリガー方法を定義します: click| hover | focus | manual複数のトリガーを渡すことができます。各トリガーはスペースで区切ります。 |
| delay | number | object 默认值:0 | data-delay | ポップオーバーの表示と非表示を遅延させるミリ秒数 - manual 手動トリガータイプには適用されません。数値が指定された場合、遅延は表示と非表示の両方に適用されます。オブジェクトが指定された場合、構造は次のようになります。
delay:
{ show: 500, hide: 100 } |
| container | string | false 默认值:false | data-container | 指定した要素にポップオーバーを追加します。 实例: container: 'body' |
方法
以下は、ポップオーバー(Popover)プラグインで役立つメソッドの一部です。
| 方法 | 描述 | 实例 |
|---|---|---|
| Options: .popover(options) | 要素のコレクションにポップオーバーのハンドルを追加します。 |
$().popover(options) |
| Toggle: .popover('toggle') | 要素の表示/非表示を切り替えるポップオーバー。 |
$('#element').popover('toggle')
|
| Show: .popover('show') | 要素のポップオーバーを表示します。 |
$('#element').popover('show')
|
| Hide: .popover('hide') | 要素のポップオーバーを非表示にします。 |
$('#element').popover('hide')
|
| Destroy: .popover('destroy') | 要素のポップオーバーを非表示にして破棄します。 |
$('#element').popover('destroy')
|
实例
以下の例は、ポップオーバー(Popover)プラグインのメソッドを示しています:
实例
尝试一下 »
結果は次のようになります:
事件
次の表に、ポップオーバー(Popover)プラグインで使用されるイベントを示します。これらのイベントは、関数内でフックとして使用できます。
| 事件 | 描述 | 实例 |
|---|---|---|
| show.bs.popover | show インスタンスメソッドが呼び出されたときに、このイベントがすぐにトリガーされます。 |
$('#mypopover').on('show.bs.popover', function () {
// 执行一些动作...
})
|
| shown.bs.popover | ポップオーバーがユーザーに表示されたときにこのイベントが発生します(CSS トランジション効果が完了するのを待ちます)。 |
$('#mypopover').on('shown.bs.popover', function () {
// 执行一些动作...
})
|
| hide.bs.popover | hide インスタンスメソッドが呼び出されたときに、このイベントがすぐにトリガーされます。 |
$('#mypopover').on('hide.bs.popover', function () {
// 执行一些动作...
})
|
| hidden.bs.popover | ポップオーバーがユーザーに非表示になったときにこのイベントが発生します(CSS トランジション効果が完了するのを待ちます)。 |
$('#mypopover').on('hidden.bs.popover', function () {
// 执行一些动作...
})
|
实例
以下の例は、ポップオーバー(Popover)プラグインのイベントを示しています:
实例
尝试一下 »
結果は次のようになります: