From ef5ac02b698ffab3a42d21f20859b70df85543c0 Mon Sep 17 00:00:00 2001 From: Jacob Thornton Date: Sat, 24 Mar 2012 17:50:21 -0700 Subject: allow prevent default for show and hide event in modal --- docs/assets/bootstrap.zip | Bin 56147 -> 56207 bytes docs/assets/js/bootstrap-modal.js | 19 ++++++++++++------- 2 files changed, 12 insertions(+), 7 deletions(-) (limited to 'docs') diff --git a/docs/assets/bootstrap.zip b/docs/assets/bootstrap.zip index 954f4d3e1..8ad9a0695 100644 Binary files a/docs/assets/bootstrap.zip and b/docs/assets/bootstrap.zip differ diff --git a/docs/assets/js/bootstrap-modal.js b/docs/assets/js/bootstrap-modal.js index e92970627..3e0fb1481 100644 --- a/docs/assets/js/bootstrap-modal.js +++ b/docs/assets/js/bootstrap-modal.js @@ -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) : -- cgit v1.2.3