1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-09-25 21:09:06 +02:00

allow prevent default for show and hide event in modal

This commit is contained in:
Jacob Thornton
2012-03-24 17:50:21 -07:00
parent f9f03d8976
commit ef5ac02b69
4 changed files with 53 additions and 14 deletions

19
js/bootstrap-modal.js vendored
View File

@@ -41,13 +41,15 @@
, show: function () {
var that = this
, e = $.Event('show')
if (this.isShown) return
this.$element.trigger(e)
if (this.isShown || e.isDefaultPrevented()) return
$('body').addClass('modal-open')
this.isShown = true
this.$element.trigger('show')
escape.call(this)
backdrop.call(this, function () {
@@ -74,18 +76,21 @@
, hide: function ( e ) {
e && e.preventDefault()
if (!this.isShown) return
var that = this
e = $.Event('hide')
this.$element.trigger(e)
if (!this.isShown || e.isDefaultPrevented()) return
this.isShown = false
$('body').removeClass('modal-open')
escape.call(this)
this.$element
.trigger('hide')
.removeClass('in')
this.$element.removeClass('in')
$.support.transition && this.$element.hasClass('fade') ?
hideWithTransition.call(this) :