BootstrapDialogのブートストラップ



Bootstrap Bootstrapdialog



Bootstrapのモーダルをよりサルにやさしいものにしてください。


参照アドレス: http://nakupanda.github.io/bootstrap3-dialog/

モーダルシェルフレーム:



Dialog pop-up layer: BootstrapDialog.alert('I want banana!') BootstrapDialog.show({ message: 'Hi Apple!' })


最も単純な

表示は提供情報のみを表示し、その他はすべてデフォルトのままにします。



 BootstrapDialog.show({ title: 'Say-hello dialog', message: 'Hi Apple!' })

ダイアログタイトル

 BootstrapDialog.show({ title: 'Default Title', message: 'Click buttons below.', buttons: [{ label: 'Title 1', action: function(dialog) { dialog.setTitle('Title 1') } }, { label: 'Title 2', action: function(dialog) { dialog.setTitle('Title 2') } }] })
 BootstrapDialog.show({ title: 'Default Title', message: 'Click buttons below.', buttons: [{ label: 'Message 1', action: function(dialog) { dialog.setMessage('Message 1') } }, { label: 'Message 2', action: function(dialog) { dialog.setMessage('Message 2') } }] })

操作ダイアログのタイトル

BootstrapDialog.show({ message: $(' ').load('remote.html') }) BootstrapDialog.show({ message: function(dialog) { var $message = $(' ') var pageToLoad = dialog.getData('pageToLoad') $message.load(pageToLoad) return $message }, data: { 'pageToLoad': 'remote.html' } })

アクションダイアログ情報

BootstrapDialog.show({ message: 'Hi Apple!', buttons: [{ label: 'Button 1' }, { label: 'Button 2', cssClass: 'btn-primary', action: function(){ alert('Hi Orange!') } }, { icon: 'glyphicon glyphicon-ban-circle', label: 'Button 3', cssClass: 'btn-warning' }, { label: 'Close', action: function(dialogItself){ dialogItself.close() } }] }) BootstrapDialog.show({ title: 'Manipulating Buttons', message: function(dialog) { var $content = $(' Revert button status right now. ') var $footerButton = dialog.getButton('btn-1') $content.find('button').click({$footerButton: $footerButton}, function(event) { event.data.$footerButton.enable() event.data.$footerButton.stopSpin() dialog.setClosable(true) }) return $content }, buttons: [{ id: 'btn-1', label: 'Click to disable and spin.', action: function(dialog) { var $button = this // 'this' here is a jQuery object that wrapping the DOM element. $button.disable() $button.spin() dialog.setClosable(false) } }] })

リモートページをロードする(1)

BootstrapDialog.show({ title: 'Button Hotkey', message: 'Try to press some keys...', onshow: function(dialog) { dialog.getButton('button-c').disable() }, buttons: [{ label: '(A) Button A', hotkey: 65, // Keycode of keyup event of key 'A' is 65. action: function() { alert('Finally, you loved Button A.') } }, { label: '(B) Button B', hotkey: 66, action: function() { alert('Hello, this is Button B!') } }, { id: 'button-c', label: '(C) Button C', hotkey: 67, action: function(){ alert('This is Button C but you won't see me dance.') } }] })

リモートページをロードする(2)

// Using init options var dialogInstance1 = new BootstrapDialog({ title: 'Dialog instance 1', message: 'Hi Apple!' }) dialogInstance1.open() // Construct by using setters var dialogInstance2 = new BootstrapDialog() dialogInstance2.setTitle('Dialog instance 2') dialogInstance2.setMessage('Hi Orange!') dialogInstance2.setType(BootstrapDialog.TYPE_SUCCESS) dialogInstance2.open() // Using chain callings var dialogInstance3 = new BootstrapDialog() .setTitle('Dialog instance 3') .setMessage('Hi Everybody!') .setType(BootstrapDialog.TYPE_INFO) .open()

ボタン

// You can use dialogInstance later. var dialogInstance = BootstrapDialog.show({ message: 'Hello Banana!' })

操作ボタン

bootstrapdialogボタンによって作成されるいくつかの追加機能があります。
$ button.toggleEnable(true | false)
$ button.enable()// $ button.toggleEnable(true)と同等
$ button.disable()// $ button.toggleEnable(false)と同等
$ button.toggleSpin(true | false)
$ button.spin()// $ button.toggleSpin(true)と同等
$ button.stopSpin()// $ button.toggleSpin(false)と同等



var dialog = new BootstrapDialog({ message: 'Hi Apple!', buttons: [{ id: 'btn-1', label: 'Button 1' }] }) dialog.realize() var btn1 = dialog.getButton('btn-1') btn1.click({'name': 'Apple'}, function(event){ alert('Hi, ' + event.data.name) }) dialog.open()

ボタンのホットキー

下のボタンをクリックしてみてください。
最後のボタンが無効になっているため、ホットキーを押しても何も起こりません。
ボックスにキーボードを必要とするコンポーネントがいくつかある場合、競合が発生する可能性があることに注意してください。次の例を試すことができます。

BootstrapDialog.show({ size: BootstrapDialog.SIZE_LARGE, message: 'Hi Apple!', buttons: [{ label: 'Button 1' }, { label: 'Button 2', cssClass: 'btn-primary', action: function(){ alert('Hi Orange!') } }, { icon: 'glyphicon glyphicon-ban-circle', label: 'Button 3', cssClass: 'btn-warning' }, { label: 'Close', action: function(dialogItself){ dialogItself.close() } }] })

ダイアログインスタンスを作成する

BootstrapDialog.show(...)は単なるショートカットです。ダイアログインスタンスが必要な場合は、「new」を使用してください。

BootstrapDialog.show({ title: 'More dialog sizes', message: 'Hi Apple!', buttons: [{ label: 'Normal', action: function(dialog){ dialog.setTitle('Normal') dialog.setSize(BootstrapDialog.SIZE_NORMAL) } }, { label: 'Small', action: function(dialog){ dialog.setTitle('Small') dialog.setSize(BootstrapDialog.SIZE_SMALL) } }, { label: 'Wide', action: function(dialog){ dialog.setTitle('Wide') dialog.setSize(BootstrapDialog.SIZE_WIDE) } }, { label: 'Large', action: function(dialog){ dialog.setTitle('Large') dialog.setSize(BootstrapDialog.SIZE_LARGE) } }] })

実際、BootstrapDialog.show(...)も、作成されたダイアログインスタンスに戻ります。

var $textAndPic = $(' ') $textAndPic.append('Who's this?
') $textAndPic.append(' ') BootstrapDialog.show({ title: 'Guess who that is', message: $textAndPic, buttons: [{ label: 'Acky', action: function(dialogRef){ dialogRef.close() } }, { label: 'Robert', action: function(dialogRef){ dialogRef.close() } }] })

識別子付きのボタン

BootstrapDialog.show({ message: 'Hi Apple!', closable: false, buttons: [{ label: 'Dialog CLOSABLE!', cssClass: 'btn-success', action: function(dialogRef){ dialogRef.setClosable(true) } }, { label: 'Dialog UNCLOSABLE!', cssClass: 'btn-warning', action: function(dialogRef){ dialogRef.setClosable(false) } }, { label: 'Close the dialog', action: function(dialogRef){ dialogRef.close() } }] })

大きな箱

デフォルトでは、ダイアログのサイズは「size-normal」またはBootstrapDialog.SIZE_NORMALですが、「size-large」またはBootstrapDialog.SIZE_LARGEのオプション「size」を設定できます。

BootstrapDialog.show({ message: 'Hi Apple!', message: 'You can not close this dialog by clicking outside and pressing ESC key.', closable: true, closeByBackdrop: false, closeByKeyboard: false, buttons: [{ label: 'Close the dialog', action: function(dialogRef){ dialogRef.close() } }] })

その他のダイアログサイズ

BootstrapDialog.SIZE_WIDEを指定することは、BootstrapModalでcssクラス「modal-lg」を使用することと同じであることに注意してください。

BootstrapDialog.confirm('Hi Apple, are you sure?')

詳しくは

bootstrapdialogはリッチコンテンツの表示をサポートしているため、ダイアログボックスメッセージのビデオクリップを使用することもできます。

BootstrapDialog.confirm('Hi Apple, are you sure?', function(result){ if(result) { alert('Yup.') }else { alert('Nope.') } })

ダイアログを閉じることができる/閉じることができない

オプション 'closable'がfalseに設定されている場合、デフォルトの閉じる動作は無効になりますが、dialog.close()を使用してダイアログを閉じることができます。

BootstrapDialog.show({ title: 'Say-hello dialog', message: 'Hello world!', buttons: [{ id: 'btn-ok', icon: 'glyphicon glyphicon-check', label: 'OK', cssClass: 'btn-primary', autospin: false, action: function(dialogRef){ dialogRef.close() } }] })

ダイアログボックスのコントロールをさらに閉じる

デフォルトでは、'Closable'をtrueに設定すると、ダイアログボックスは次の方法で閉じることができます。ダイアログボックスをクリックし、ESCを押して、ダイアログボックスのタイトルの右側にある閉じるアイコンをクリックします。

ダイアログボックスを閉じたい場合は、ダイアログを閉じるアイコンのタイトルをクリックします。「closeByBackdrop」と「closeByKeyboard」を設定するオプションはfalseです。

 class='modal fade'> 
class='modal-dialog'>
class='modal-content'>
class='modal-header'>
type='button' class='close' data-dismiss='modal' aria-hidden='true'>×
class='modal-title'>Modal title

class='modal-body'>

One fine body…



class='modal-footer'>
type='button' class='btn btn-default' data-dismiss='modal'>Close
type='button' class='btn btn-primary'>Save changes



確認

|_+_|

コールバックで確認

|_+_|

利用可能なオプション


以下に説明するすべてのオプションは オプション 、ただし、表示するメッセージを表示しないと、奇妙なダイアログが表示されます。
ほとんどのオプションは、initオプションまたはプロパティセッターを介して設定できます。

オプション 可能な値 説明
タイプ BootstrapDialog.TYPE_DEFAULTまたは 'type-default'
BootstrapDialog.TYPE_INFOまたは 'type-in​​fo'
BootstrapDialog.TYPE_PRIMARYまたは 'type-primary'(デフォルト)
BootstrapDialog.TYPE_SUCCESSまたは「type-success」
BootstrapDialog.TYPE_WARNINGまたは 'type-warning'
BootstrapDialog.TYPE_DANGERまたは「type-danger」
ダイアログに特定の外観を与えると、配色はで見ることができます ブートストラップのボタン
サイズ BootstrapDialog.SIZE_NORMALまたは 'size-normal'(デフォルト)
BootstrapDialog.SIZE_WIDEまたは「サイズ全体」
BootstrapDialog.SIZE_LARGEまたは 'size-large'
-
cssClass - ダイアログに追加される追加のcssクラス。
題名 文字列またはオブジェクト(html) -
メッセージ 文字列またはオブジェクト(html) -
ボタン アレイ 例:
|_+_|
id :オプション。idが設定されている場合は、dialogInstance.getButton(id)を使用して後でボタンを取得できます。
アイコン :オプション、設定されている場合、指定されたアイコンがボタンに追加されます。
cssClass :オプションで、ボタンに追加される追加のcssクラス。
オートスピン :optinal、trueの場合、ボタンをクリックすると回転するアイコンが表示されます。
アクション :オプション。指定されている場合、ボタンがクリックされた後にコールバックが呼び出され、ダイアログインスタンスがコールバック関数に渡されます。
閉鎖可能 true | false に設定した場合 true 、次の方法でダイアログを閉じることができます。
  • ダイアログヘッダーの閉じるアイコンをクリックします。
  • ダイアログの外側をクリックします。
  • ESCキー。
スピニコン アイコンクラス名。たとえば、「glyphiconglyphicon-check」。
デフォルト値は「glyphiconglyphicon-asterisk」です。
ボタンの「自動スピン」がtrueに設定されている場合に、スピンアイコンとして使用するアイコンを指定します。
データ Key-Valueオブジェクト。例:{'id': '100'} ダイアログにバインドされるデータ。
オンショー 関数 指定すると、ダイアログがポップアップしたときに呼び出されます。
onshown 関数 指定すると、ダイアログがポップアップしたときに呼び出されます。
オンハイド 関数 指定すると、ダイアログがポップダウンしたときに呼び出されます。
隠された 関数 指定されている場合、ダイアログがポップダウンされたときに呼び出されます。
自己破壊 true(デフォルト) | false trueの場合、ダイアログがポップダウンされた後、すべてのモーダル要素がDOMツリーから削除されます。ダイアログ(同じインスタンス)の子犬を何度も上下させる必要がある場合は、falseに設定してください。
説明 ストリング 指定すると、 'aria-describeby'属性が、説明文字列を値としてダイアログに追加されます。これにより、スクリーンリーダーで説明を読むことができるため、アクセシビリティを向上させることができます。
nl2br true | false 改行文字を自動的にに変換します
trueに設定されている場合、falseの場合、すべてが元の状態に保たれます。

利用可能な方法


方法 説明
開いた() ダイアログを開きます。使用法:dialogInstance.open()
閉じる() ダイアログを閉じます。使用法:dialogInstance.close()
getModal() $( '')と同等の生のモーダルを返します
getModalDialog() 生のモーダルダイアログを返します。
getModalContent() 生のモーダルコンテンツを返します。
getModalHeader() 生のモーダルヘッダーを返します。
getModalBody() 生のモーダルボディを返します。
getModalFooter() 生のモーダルフッターを返します。
getData(key) 指定されたキーに従ってデータエントリを取得します。データエントリが見つからない場合はnullを返します。
setData(key、value) データエントリをダイアログインスタンスにバインドします。値は、JavaScriptがサポートする任意のタイプにすることができます。
enableButtons(boolean) falseの場合はダイアログフッターのすべてのボタンを無効にし、trueの場合はすべて有効にします。
setClosable(boolean) true(デフォルト)に設定すると、ダイアログヘッダーの閉じるアイコンをクリックするか、ダイアログの外側をクリックするか、ESCキーを押すことでダイアログを閉じることができます。
気付く() dialog.open()を呼び出すと、このメソッドが最初に自動的に呼び出されますが、表示される前にダイアログで何かを実行したい場合は、dialog.open()を呼び出す前にdialog.realize()を手動で呼び出すことができます。

プロジェクトに移動します。 | 私に連絡して このサンプルページの改善にご協力いただければ。