ブートストラップ ポップアップ ボックス
Bootstrap Popover プラグイン
Popover はツールチップに似ており、拡張ビューを提供します。ポップオーバーをアクティブにするには、ユーザーは要素の上にマウスを移動するだけです。ポップアップ ボックスの内容はすべて、Bootstrap Data API を使用して入力できます。この方法はツールチップに依存します。
このプラグインの機能を個別に参照したい場合は、Tooltip プラグインに依存する popover.js を参照する必要があります。あるいは、ブートストラップ プラグインの概要の章で説明したように、bootstrap.js または bootstrap.min.js の縮小バージョンを参照することもできます。
使用法
ポップオーバー プラグインは、必要に応じてコンテンツとマークアップを生成します。デフォルトでは、ポップオーバーはトリガー要素の後ろに配置されます。ポップオーバーは 2 つの方法で追加できます:
data 属性経由 : ポップオーバーを追加するには、アンカー/ボタン タグに data-toggle="popover" を追加するだけです。アンカーのタイトルはポップオーバーのテキストです。デフォルトでは、プラグインはポップオーバーを上部に配置します。
</a>
JavaScript 経由: 有効にするJavaScript 経由のポップオーバー:
<!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 弹出框(Popover)插件</title> <link href="http://libs.baidu.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.3.0/js/bootstrap.min.js"></script> </head> <body> <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> </body> </html>
インスタンスの実行 »「インスタンスの実行」ボタンをクリックしてオンラインインスタンスを表示します
オプション
Bootstrap Data API を通じて追加されるか、JavaScript を通じて呼び出されるオプションがいくつかあります。オプションは次の表にリストされています:
オプション名 | タイプ/デフォルト値 | データプロパティ名 | 説明 | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
アニメーション | ブール デフォルト値: true | data -アニメーション | CSS フェードトランジション効果をポップアップボックスに適用します。 | |||||||||||||||||||||||||||||||||
html | boolean デフォルト値: false | data-html | ポップアップボックスにHTMLを挿入します。 false の場合、jQuery の text メソッドを使用してコンテンツを dom に挿入します。 XSS 攻撃が心配な場合は、テキストを使用してください。 | |||||||||||||||||||||||||||||||||
placement | string|function デフォルト値: top | data-placement | ポップアップボックスの配置方法を指定します (つまり、top|bottom|left|right|auto)。 autoとして指定すると、ポップアップボックスが動的に調整されます。たとえば、配置が「自動左」の場合、ポップアップは可能な場合は左側に表示され、状況によっては許可されない場合は右側に表示されます。 | |||||||||||||||||||||||||||||||||
string | デフォルト値: false | data-selectorセレクターが提供されている場合、ポップアップ オブジェクトは指定されたターゲットに委任されます。 | ||||||||||||||||||||||||||||||||||
string | function | デフォルト値: '' | data-titletitle 属性が指定されていない場合、title オプションはデフォルトのタイトル値です。 | ||||||||||||||||||||||||||||||||||
string | デフォルト値: 'hover focus' | data-triggerポップアップをトリガーする方法を定義します。複数のトリガーをスペースで区切って渡すことができます。 | delay | |||||||||||||||||||||||||||||||||
デフォルト値: 0 | data-delay | ポップアップボックスの表示と非表示を遅延するミリ秒数 - 手動トリガータイプには適用されません。数値を指定すると、表示と非表示に遅延が適用されます。オブジェクトが指定されている場合、構造は次のようになります。 container | ||||||||||||||||||||||||||||||||||
デフォルト値: false | data-container | 指定された要素にポップアップ ボックスを追加します。 例: コンテナ: 'body' |
メソッド | 説明 | インスタンス |
---|---|---|
オプション: .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') |
例
次の例は、ポップオーバープラグインメソッドを示しています:
例
<!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 弹出框(Popover)插件方法</title> <link href="http://libs.baidu.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.3.0/js/bootstrap.min.js"></script> </head> <body> <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> </body> </html>
インスタンスの実行»
オンラインの例を表示するには、[インスタンスの実行]ボタンをクリックします
イベント
次の表は、ポップオーバー プラグインで使用されるイベントのリストです。これらのイベントは関数のフックとして使用できます。
Event | Description | Instance |
---|---|---|
show.bs.popover | このイベントは、show インスタンス メソッドが呼び出されるとすぐにトリガーされます。 | $('#mypopover').on('show.bs.popover', function () { // 执行一些动作... }) |
shown.bs.popover | このイベントは、ポップオーバーがユーザーに表示されるとトリガーされます (CSS トランジション効果が完了するまで待機します)。 | $('#mypopover').on('shown.bs.popover', function () { // 执行一些动作... }) |
hide.bs.popover | このイベントは、インスタンスの非表示メソッドが呼び出されるとすぐにトリガーされます。 | $('#mypopover').on('hide.bs.popover', function () { // 执行一些动作... }) |
hidden.bs.popover | このイベントは、ツールヒントがユーザーから非表示になったときに発生します (CSS トランジション効果が完了するまで待機します)。 | $('#mypopover').on('hidden.bs.popover', function () { // 执行一些动作... }) |
インスタンス
次の例は、ポップオーバープラグインのイベントを示しています:
インスタンス
<!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 弹出框(Popover)插件事件</title> <link href="http://libs.baidu.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.3.0/js/bootstrap.min.js"></script> </head> <body> <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> </body> </html>
インスタンスの実行»
「インスタンスの実行」ボタンをクリックして、オンラインインスタンス