1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-13 00:54:04 +02:00

Properly fire hidden event when tooltip is destroyed

Fixes #13031.
This commit is contained in:
Heinrich Fenkart
2014-09-09 00:17:32 +02:00
parent 0cf94b82ee
commit 76762169c3

View File

@@ -281,7 +281,7 @@
$tip.removeClass('fade in top bottom left right') $tip.removeClass('fade in top bottom left right')
} }
Tooltip.prototype.hide = function () { Tooltip.prototype.hide = function (callback) {
var that = this var that = this
var $tip = this.tip() var $tip = this.tip()
var e = $.Event('hide.bs.' + this.type) var e = $.Event('hide.bs.' + this.type)
@@ -291,6 +291,7 @@
that.$element that.$element
.removeAttr('aria-describedby') .removeAttr('aria-describedby')
.trigger('hidden.bs.' + that.type) .trigger('hidden.bs.' + that.type)
callback && callback()
} }
this.$element.trigger(e) this.$element.trigger(e)
@@ -438,8 +439,11 @@
} }
Tooltip.prototype.destroy = function () { Tooltip.prototype.destroy = function () {
var that = this
clearTimeout(this.timeout) clearTimeout(this.timeout)
this.hide().$element.off('.' + this.type).removeData('bs.' + this.type) this.hide(function () {
that.$element.off('.' + that.type).removeData('bs.' + that.type)
})
} }