mirror of
https://github.com/twbs/bootstrap.git
synced 2025-02-26 23:54:23 +01:00
Fix toggle for Tooltips/Popover which was called even if the Tooltip/Popover was disabled
This commit is contained in:
parent
3a6fc265f6
commit
4571ab0e57
@ -184,6 +184,10 @@ const Tooltip = (($) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
toggle(event) {
|
toggle(event) {
|
||||||
|
if (!this._isEnabled) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if (event) {
|
if (event) {
|
||||||
const dataKey = this.constructor.DATA_KEY
|
const dataKey = this.constructor.DATA_KEY
|
||||||
let context = $(event.currentTarget).data(dataKey)
|
let context = $(event.currentTarget).data(dataKey)
|
||||||
@ -234,8 +238,8 @@ const Tooltip = (($) => {
|
|||||||
if (this._popper !== null) {
|
if (this._popper !== null) {
|
||||||
this._popper.destroy()
|
this._popper.destroy()
|
||||||
}
|
}
|
||||||
this._popper = null
|
|
||||||
|
|
||||||
|
this._popper = null
|
||||||
this.element = null
|
this.element = null
|
||||||
this.config = null
|
this.config = null
|
||||||
this.tip = null
|
this.tip = null
|
||||||
@ -706,7 +710,6 @@ const Tooltip = (($) => {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -387,4 +387,27 @@ $(function () {
|
|||||||
|
|
||||||
$popover.bootstrapPopover('show')
|
$popover.bootstrapPopover('show')
|
||||||
})
|
})
|
||||||
|
|
||||||
|
QUnit.test('popover should be shown right away after the call of disable/enable', function (assert) {
|
||||||
|
assert.expect(2)
|
||||||
|
var done = assert.async()
|
||||||
|
var $popover = $('<a href="#">@mdo</a>')
|
||||||
|
.appendTo('#qunit-fixture')
|
||||||
|
.bootstrapPopover({
|
||||||
|
title: 'Test popover',
|
||||||
|
content: 'with disable/enable'
|
||||||
|
})
|
||||||
|
.on('shown.bs.popover', function () {
|
||||||
|
assert.strictEqual($('.popover').hasClass('show'), true)
|
||||||
|
done()
|
||||||
|
})
|
||||||
|
|
||||||
|
$popover.bootstrapPopover('disable')
|
||||||
|
$popover.trigger($.Event('click'))
|
||||||
|
setTimeout(function () {
|
||||||
|
assert.strictEqual($('.popover').length === 0, true)
|
||||||
|
$popover.bootstrapPopover('enable')
|
||||||
|
$popover.trigger($.Event('click'))
|
||||||
|
}, 200)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
@ -826,4 +826,26 @@ $(function () {
|
|||||||
|
|
||||||
$el.bootstrapTooltip('show')
|
$el.bootstrapTooltip('show')
|
||||||
})
|
})
|
||||||
|
|
||||||
|
QUnit.test('tooltip should be shown right away after the call of disable/enable', function (assert) {
|
||||||
|
assert.expect(2)
|
||||||
|
var done = assert.async()
|
||||||
|
|
||||||
|
var $trigger = $('<a href="#" rel="tooltip" data-trigger="click" title="Another tooltip"/>')
|
||||||
|
.appendTo('#qunit-fixture')
|
||||||
|
.bootstrapTooltip()
|
||||||
|
.on('shown.bs.tooltip', function () {
|
||||||
|
assert.strictEqual($('.tooltip').hasClass('show'), true)
|
||||||
|
done()
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
$trigger.bootstrapTooltip('disable')
|
||||||
|
$trigger.trigger($.Event('click'))
|
||||||
|
setTimeout(function () {
|
||||||
|
assert.strictEqual($('.tooltip').length === 0, true)
|
||||||
|
$trigger.bootstrapTooltip('enable')
|
||||||
|
$trigger.trigger($.Event('click'))
|
||||||
|
}, 200)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user