diff --git a/docs/_includes/js/popovers.html b/docs/_includes/js/popovers.html
index 5f39399872..dadddafc34 100644
--- a/docs/_includes/js/popovers.html
+++ b/docs/_includes/js/popovers.html
@@ -293,6 +293,10 @@ sagittis lacus vel augue laoreet rutrum faucibus.">
hidden.bs.popover |
This event is fired when the popover has finished being hidden from the user (will wait for CSS transitions to complete). |
+
+ inserted.bs.popover |
+ This event is fired after the show.bs.popover event when the popover template has been added to the DOM. |
+
diff --git a/docs/_includes/js/tooltips.html b/docs/_includes/js/tooltips.html
index d606929ba8..a8914b180e 100644
--- a/docs/_includes/js/tooltips.html
+++ b/docs/_includes/js/tooltips.html
@@ -260,6 +260,10 @@ $('#example').tooltip(options)
hidden.bs.tooltip |
This event is fired when the tooltip has finished being hidden from the user (will wait for CSS transitions to complete). |
+
+ inserted.bs.tooltip |
+ This event is fired after the show.bs.tooltip event when the tooltip template has been added to the DOM. |
+
diff --git a/js/tests/unit/popover.js b/js/tests/unit/popover.js
index fbabab9e3e..2c3fd0cb04 100644
--- a/js/tests/unit/popover.js
+++ b/js/tests/unit/popover.js
@@ -259,4 +259,21 @@ $(function () {
assert.strictEqual($popover.data('bs.popover'), undefined, 'should not initialize the popover')
})
+ QUnit.test('should fire inserted event', function (assert) {
+ assert.expect(2)
+ var done = assert.async()
+
+ $('@Johann-S')
+ .appendTo('#qunit-fixture')
+ .on('inserted.bs.popover', function () {
+ assert.notEqual($('.popover').length, 0, 'popover was inserted')
+ assert.ok(true, 'inserted event fired')
+ done()
+ })
+ .bootstrapPopover({
+ title: 'Test',
+ content: 'Test'
+ })
+ .bootstrapPopover('show')
+ })
})
diff --git a/js/tests/unit/tooltip.js b/js/tests/unit/tooltip.js
index 57a59db183..8086631c89 100644
--- a/js/tests/unit/tooltip.js
+++ b/js/tests/unit/tooltip.js
@@ -139,6 +139,20 @@ $(function () {
.bootstrapTooltip('show')
})
+ QUnit.test('should fire inserted event', function (assert) {
+ assert.expect(2)
+ var done = assert.async()
+
+ $('')
+ .appendTo('#qunit-fixture')
+ .on('inserted.bs.tooltip', function () {
+ assert.notEqual($('.tooltip').length, 0, 'tooltip was inserted')
+ assert.ok(true, 'inserted event fired')
+ done()
+ })
+ .bootstrapTooltip('show')
+ })
+
QUnit.test('should fire shown event', function (assert) {
assert.expect(1)
var done = assert.async()
diff --git a/js/tooltip.js b/js/tooltip.js
index 789d04f7ab..bbff2cdec8 100644
--- a/js/tooltip.js
+++ b/js/tooltip.js
@@ -185,6 +185,7 @@
.data('bs.' + this.type, this)
this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
+ this.$element.trigger('inserted.bs.' + this.type)
var pos = this.getPosition()
var actualWidth = $tip[0].offsetWidth