0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-12-01 13:24:25 +01:00

Add an update method to allow to update position for Tooltip/Popover/Dropdown manually

This commit is contained in:
Johann-S 2017-04-19 15:08:06 +02:00
parent fc8b85b626
commit e5a0471b0b
5 changed files with 29 additions and 2 deletions

View File

@ -568,6 +568,7 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
| Method | Description | | Method | Description |
| --- | --- | | --- | --- |
| `$().dropdown('toggle')` | Toggles the dropdown menu of a given navbar or tabbed navigation. | | `$().dropdown('toggle')` | Toggles the dropdown menu of a given navbar or tabbed navigation. |
| `$().dropdown('update')` | Updates the position of an element's dropdown. |
### Events ### Events

View File

@ -322,6 +322,12 @@ Toggles the ability for an element's popover to be shown or hidden.
{% highlight js %}$('#element').popover('toggleEnabled'){% endhighlight %} {% highlight js %}$('#element').popover('toggleEnabled'){% endhighlight %}
#### `.popover('update')`
Updates the position of an element's popover.
{% highlight js %}$('#element').popover('update'){% endhighlight %}
### Events ### Events
<table class="table table-bordered table-striped table-responsive"> <table class="table table-bordered table-striped table-responsive">

View File

@ -298,6 +298,12 @@ Toggles the ability for an element's tooltip to be shown or hidden.
{% highlight js %}$('#element').tooltip('toggleEnabled'){% endhighlight %} {% highlight js %}$('#element').tooltip('toggleEnabled'){% endhighlight %}
#### `.tooltip('update')`
Updates the position of an element's tooltip.
{% highlight js %}$('#element').tooltip('update'){% endhighlight %}
### Events ### Events
<table class="table table-bordered table-striped table-responsive"> <table class="table table-bordered table-striped table-responsive">

View File

@ -185,8 +185,14 @@ const Dropdown = (($) => {
if (this._popper !== null) { if (this._popper !== null) {
this._popper.destroy() this._popper.destroy()
} }
this._popper = null
} }
update() {
if (this._popper !== null) {
this._popper.scheduleUpdate()
}
}
// private // private

View File

@ -227,6 +227,9 @@ const Tooltip = (($) => {
this._timeout = null this._timeout = null
this._hoverState = null this._hoverState = null
this._activeTrigger = null this._activeTrigger = null
if (this._popper !== null) {
this._popper.destroy()
}
this._popper = null this._popper = null
this.element = null this.element = null
@ -385,6 +388,11 @@ const Tooltip = (($) => {
} }
update() {
if (this._popper !== null) {
this._popper.scheduleUpdate()
}
}
// protected // protected
@ -646,8 +654,8 @@ const Tooltip = (($) => {
} }
_handlePopperPlacementChange(data) { _handlePopperPlacementChange(data) {
this._cleanTipClass() this._cleanTipClass()
this.addAttachmentClass(this._getAttachment(data.placement)) this.addAttachmentClass(this._getAttachment(data.placement))
} }
// static // static