diff --git a/docs/templates/pages/javascript.mustache b/docs/templates/pages/javascript.mustache index 49d065c32..4ec8a5f51 100644 --- a/docs/templates/pages/javascript.mustache +++ b/docs/templates/pages/javascript.mustache @@ -786,7 +786,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
{{_i}}Toggles an element's tooltip.{{/i}}
$('#element').tooltip('toggle')
{{_i}}Destroys an element's tooltip.{{/i}}
+{{_i}}Hides and destroys an element's tooltip.{{/i}}
$('#element').tooltip('destroy')
@@ -947,7 +947,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) {
{{_i}}Toggles an elements popover.{{/i}}
$('#element').popover('toggle')
{{_i}}Destroys an element's popover.{{/i}}
+{{_i}}Hides and destroys an element's popover.{{/i}}
$('#element').popover('destroy')
diff --git a/js/bootstrap-popover.js b/js/bootstrap-popover.js
index 845108b9b..57420bb5d 100644
--- a/js/bootstrap-popover.js
+++ b/js/bootstrap-popover.js
@@ -72,6 +72,7 @@
}
, destroy: function () {
+ this.hide()
this.$element.off(this.options.ns).removeData('popover')
}
diff --git a/js/bootstrap-tooltip.js b/js/bootstrap-tooltip.js
index 02f84d470..f22aa8e64 100644
--- a/js/bootstrap-tooltip.js
+++ b/js/bootstrap-tooltip.js
@@ -236,6 +236,7 @@
}
, destroy: function () {
+ this.hide()
this.$element.off(this.options.ns).removeData('tooltip')
}
diff --git a/js/tests/unit/bootstrap-popover.js b/js/tests/unit/bootstrap-popover.js
index 290be827f..daffe215c 100644
--- a/js/tests/unit/bootstrap-popover.js
+++ b/js/tests/unit/bootstrap-popover.js
@@ -96,7 +96,9 @@ $(function () {
ok(popover.data('popover'), 'popover has data')
ok(popover.data('events').mouseover && popover.data('events').mouseout, 'popover has hover event')
ok(popover.data('events').click[0].namespace == 'foo', 'popover has extra click.foo event')
+ popover.popover('show')
popover.popover('destroy')
+ ok(!popover.hasClass('in'), 'popover is hidden')
ok(!popover.data('popover'), 'popover does not have data')
ok(popover.data('events').click[0].namespace == 'foo', 'popover still has click.foo')
ok(!popover.data('events').mouseover && !popover.data('events').mouseout, 'popover does not have any events')
diff --git a/js/tests/unit/bootstrap-tooltip.js b/js/tests/unit/bootstrap-tooltip.js
index 66bbeac7e..2eb8c8f7c 100644
--- a/js/tests/unit/bootstrap-tooltip.js
+++ b/js/tests/unit/bootstrap-tooltip.js
@@ -133,7 +133,9 @@ $(function () {
ok(tooltip.data('tooltip'), 'tooltip has data')
ok(tooltip.data('events').mouseover && tooltip.data('events').mouseout, 'tooltip has hover event')
ok(tooltip.data('events').click[0].namespace == 'foo', 'tooltip has extra click.foo event')
+ tooltip.tooltip('show')
tooltip.tooltip('destroy')
+ ok(!tooltip.hasClass('in'), 'tooltip is hidden')
ok(!tooltip.data('tooltip'), 'tooltip does not have data')
ok(tooltip.data('events').click[0].namespace == 'foo', 'tooltip still has click.foo')
ok(!tooltip.data('events').mouseover && !tooltip.data('events').mouseout, 'tooltip does not have any events')