diff options
-rw-r--r-- | docs/templates/pages/javascript.mustache | 4 | ||||
-rw-r--r-- | js/bootstrap-popover.js | 2 | ||||
-rw-r--r-- | js/bootstrap-tooltip.js | 8 | ||||
-rw-r--r-- | js/tests/unit/bootstrap-popover.js | 8 | ||||
-rw-r--r-- | js/tests/unit/bootstrap-tooltip.js | 8 | ||||
-rw-r--r-- | less/dropdowns.less | 4 |
6 files changed, 22 insertions, 12 deletions
diff --git a/docs/templates/pages/javascript.mustache b/docs/templates/pages/javascript.mustache index 326f2b2e79..062e02863e 100644 --- a/docs/templates/pages/javascript.mustache +++ b/docs/templates/pages/javascript.mustache @@ -780,7 +780,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> @@ -935,7 +935,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 fe22ecb47c..2e6d9c32a5 100644 --- a/js/bootstrap-popover.js +++ b/js/bootstrap-popover.js @@ -72,7 +72,7 @@ } , destroy: function () { - this.$element.off().removeData('popover') + this.hide().$element.off('.' + this.type).removeData(this.type) } }) diff --git a/js/bootstrap-tooltip.js b/js/bootstrap-tooltip.js index f280e36966..f9447410ec 100644 --- a/js/bootstrap-tooltip.js +++ b/js/bootstrap-tooltip.js @@ -47,8 +47,8 @@ if (this.options.trigger != 'manual') { eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus' eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur' - this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this)) - this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this)) + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) } this.options.selector ? @@ -176,6 +176,8 @@ $.support.transition && this.$tip.hasClass('fade') ? removeWithAnimation() : $tip.remove() + + return this } , fixTitle: function () { @@ -236,7 +238,7 @@ } , destroy: function () { - this.$element.off().removeData('tooltip') + this.hide().$element.off('.' + this.type).removeData(this.type) } } diff --git a/js/tests/unit/bootstrap-popover.js b/js/tests/unit/bootstrap-popover.js index 6d5d9f7a18..daffe215c9 100644 --- a/js/tests/unit/bootstrap-popover.js +++ b/js/tests/unit/bootstrap-popover.js @@ -92,12 +92,16 @@ $(function () { }) test("should destroy popover", function () { - var popover = $('<div/>').popover() + var popover = $('<div/>').popover().on('click.foo', 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'), 'popover does not have any events') + 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') }) })
\ No newline at end of file diff --git a/js/tests/unit/bootstrap-tooltip.js b/js/tests/unit/bootstrap-tooltip.js index 7852305c1e..2eb8c8f7c9 100644 --- a/js/tests/unit/bootstrap-tooltip.js +++ b/js/tests/unit/bootstrap-tooltip.js @@ -129,12 +129,16 @@ $(function () { }) test("should destroy tooltip", function () { - var tooltip = $('<div/>').tooltip() + var tooltip = $('<div/>').tooltip().on('click.foo', 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'), 'tooltip does not have any events') + 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') }) }) diff --git a/less/dropdowns.less b/less/dropdowns.less index 1e4f33ff6b..5f62d27f04 100644 --- a/less/dropdowns.less +++ b/less/dropdowns.less @@ -60,8 +60,8 @@ margin: 1px 0 0; // override default ul list-style: none; background-color: @dropdownBackground; - border: 1px solid #ccc; - border: 1px solid rgba(0,0,0,.2); + border: 1px solid #ccc; // Fallback for IE7-8 + border: 1px solid @dropdownBorder; *border-right-width: 2px; *border-bottom-width: 2px; .border-radius(6px); |