From 117f65d43108d5d7ff1c5011f0b8b61f7ef3b9dd Mon Sep 17 00:00:00 2001 From: Jon Stevens <latchkey@gmail.com> Date: Fri, 20 Jul 2012 09:47:12 -0700 Subject: [PATCH] on destroy, also hide. issue #3880, pull #4104 --- docs/templates/pages/javascript.mustache | 4 ++-- js/bootstrap-popover.js | 1 + js/bootstrap-tooltip.js | 1 + js/tests/unit/bootstrap-popover.js | 2 ++ js/tests/unit/bootstrap-tooltip.js | 2 ++ 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/templates/pages/javascript.mustache b/docs/templates/pages/javascript.mustache index 49d065c326..4ec8a5f517 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) { <p>{{_i}}Toggles an element's tooltip.{{/i}}</p> <pre class="prettyprint linenums">$('#element').tooltip('toggle')</pre> <h4>.tooltip('destroy')</h4> - <p>{{_i}}Destroys an element's tooltip.{{/i}}</p> + <p>{{_i}}Hides and destroys an element's tooltip.{{/i}}</p> <pre class="prettyprint linenums">$('#element').tooltip('destroy')</pre> </section> @@ -947,7 +947,7 @@ $('a[data-toggle="tab"]').on('shown', function (e) { <p>{{_i}}Toggles an elements popover.{{/i}}</p> <pre class="prettyprint linenums">$('#element').popover('toggle')</pre> <h4>.popover('destroy')</h4> - <p>{{_i}}Destroys an element's popover.{{/i}}</p> + <p>{{_i}}Hides and destroys an element's popover.{{/i}}</p> <pre class="prettyprint linenums">$('#element').popover('destroy')</pre> </section> diff --git a/js/bootstrap-popover.js b/js/bootstrap-popover.js index 845108b9ba..57420bb5d9 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 02f84d470d..f22aa8e643 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 290be827ff..daffe215c9 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 66bbeac7ec..2eb8c8f7c9 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') -- GitLab