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)プラグインを利用する方法を示しています。

实例

<div class="container" style="padding: 100px 50px 10px;" > <button type="button" class="btn btn-default" title="Popover title" data-container="body" data-toggle="popover" data-placement="left" data-content="左側の Popover 内のいくつかの内容">左側の Popover</button> <button type="button" class="btn btn-primary" title="Popover title" data-container="body" data-toggle="popover" data-placement="top" data-content="上部の Popover 内のいくつかの内容">上部の Popover</button> <button type="button" class="btn btn-success" title="Popover title" data-container="body" data-toggle="popover" data-placement="bottom" data-content="下部の Popover 内のいくつかの内容">下部の Popover</button> <button type="button" class="btn btn-warning" title="Popover title" data-container="body" data-toggle="popover" data-placement="right" data-content="右側の Popover 内のいくつかの内容">右側の Popover</button> </div> <script>
$(function (){ $("[data-toggle='popover']").popover(); });
</script> </div>

尝试一下 »

結果は次のようになります:

弹出框(Popover)插件

选项

一部のオプションは、Bootstrap データ API(Bootstrap Data API)を介して追加されるか、JavaScript を介して呼び出されます。次の表にこれらのオプションを示します。

选项名称类型/默认值Data 属性名描述
animationboolean
默认值:true
data-animationポップオーバーに CSS フェード遷移効果を適用します。
htmlboolean
默认值:false
data-htmlポップオーバーに HTML を挿入します。false の場合、jQuery の text メソッドが DOM にコンテンツを挿入するために使用されます。XSS 攻撃が心配な場合は、text を使用してください。
placementstring|function
默认值:top
data-placementポップオーバーの配置方法(top|bottom|left|right|auto)を指定します。
として指定された場合autoその場合、ポップオーバーが動的に調整されます。たとえば、placement が "auto left" の場合、ポップオーバーは可能な限り左に表示され、状況が許さない場合にのみ右に表示されます。
selectorstring
默认值:false
data-selectorセレクターが提供された場合、ポップオーバーオブジェクトは指定されたターゲットに委任されます。
titlestring | function
默认值:''
data-title如果未指定title属性の場合、title オプションはデフォルトの title 値になります。
triggerstring
默认值:'hover focus'
data-triggerポップオーバーのトリガー方法を定義します: click| hover | focus | manual複数のトリガーを渡すことができます。各トリガーはスペースで区切ります。
delaynumber | object
默认值:0
data-delayポップオーバーの表示と非表示を遅延させるミリ秒数 - manual 手動トリガータイプには適用されません。数値が指定された場合、遅延は表示と非表示の両方に適用されます。オブジェクトが指定された場合、構造は次のようになります。
delay:
{ show: 500, hide: 100 }
containerstring | 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)プラグインのメソッドを示しています:

实例

<div class="container" style="padding: 100px 50px 10px;" > <button type="button" class="btn btn-default popover-show" title="Popover title" data-container="body" data-toggle="popover" data-placement="left" data-content="左側の Popover 内のいくつかのコンテンツ —— show メソッド">左側の Popover</button> <button type="button" class="btn btn-primary popover-hide" title="Popover title" data-container="body" data-toggle="popover" data-placement="top" data-content="上部の Popover 内のいくつかのコンテンツ —— hide メソッド">上部の Popover</button> <button type="button" class="btn btn-success popover-destroy" title="Popover title" data-container="body" data-toggle="popover" data-placement="bottom" data-content="下部の Popover 内のいくつかのコンテンツ —— destroy メソッド">下部の Popover</button> <button type="button" class="btn btn-warning popover-toggle" title="Popover title" data-container="body" data-toggle="popover" data-placement="right" data-content="右側の Popover 内のいくつかのコンテンツ — toggle メソッド">右側の Popover</button><br><br><br><br><br><br> <p class="popover-options"> <a href="#" type="button" class="btn btn-warning" title="<h2>Title</h2>" data-container="body" data-toggle="popover" data-content="<h4>Popover 内のいくつかの内容 —— options メソッド</h4>"> Popover </a> </p> <script>
$(function () { $('.popover-show').popover('show');}); $(function () { $('.popover-hide').popover('hide');}); $(function () { $('.popover-destroy').popover('destroy');}); $(function () { $('.popover-toggle').popover('toggle');}); $(function () { $(".popover-options a").popover({html : true });});
</script> </div>

尝试一下 »

結果は次のようになります:

弹出框(Popover)插件方法

事件

次の表に、ポップオーバー(Popover)プラグインで使用されるイベントを示します。これらのイベントは、関数内でフックとして使用できます。

事件描述实例
show.bs.popovershow インスタンスメソッドが呼び出されたときに、このイベントがすぐにトリガーされます。
$('#mypopover').on('show.bs.popover', function () {
  // 执行一些动作...
})
shown.bs.popoverポップオーバーがユーザーに表示されたときにこのイベントが発生します(CSS トランジション効果が完了するのを待ちます)。
$('#mypopover').on('shown.bs.popover', function () {
  // 执行一些动作...
})
hide.bs.popoverhide インスタンスメソッドが呼び出されたときに、このイベントがすぐにトリガーされます。
$('#mypopover').on('hide.bs.popover', function () {
  // 执行一些动作...
})
hidden.bs.popoverポップオーバーがユーザーに非表示になったときにこのイベントが発生します(CSS トランジション効果が完了するのを待ちます)。
$('#mypopover').on('hidden.bs.popover', function () {
  // 执行一些动作...
})

实例

以下の例は、ポップオーバー(Popover)プラグインのイベントを示しています:

实例

<div clas="container" style="padding: 100px 50px 10px;" > <button type="button" class="btn btn-primary popover-show" title="Popover title" data-container="body" data-toggle="popover" data-content="左側の Popover 内のいくつかのコンテンツ —— show メソッド">左側の Popover</button> </div> <script>
$(function () { $('.popover-show').popover('show');}); $(function () { $('.popover-show').on('shown.bs.popover', function () { alert("当显示时警告消息"); }) });
</script> </div>

尝试一下 »

結果は次のようになります:

弹出框(Popover)插件事件
其他扩展