JavaScript/jQuery Popover API

The Popover is a widget that shows notifications within a box with an arrow pointing to a specified UI element.

import Popover from "devextreme/ui/popover"

DevExtreme widgets are integrated with many popular libraries and frameworks. See the Installation section (for JavaScript libraries) or the Prerequisites and Installation section (for ASP.NET MVC framework) to find details on setting up DevExtreme with a particular library or framework.

The following code shows how to create the Popover widget using every supported library and framework. For more details on working with widgets in these libraries and frameworks, see the Widget Basics topic for jQuery, Angular, AngularJS, Knockout or ASP.NET MVC.

jQuery
HTML
JavaScript
<div id="targetElement"></div>
<div id="popover">
    <p>Popover content</p>
</div>
$(function () {
    $("#popover").dxPopover({
        target: "#targetElement",
        showEvent: 'dxhoverstart',
        hideEvent: 'dxhoverend'
    });
});
Angular
HTML
TypeScript
<div id="targetElement"></div>
<dx-popover
    target="#targetElement"
    showEvent="dxhoverstart"
    hideEvent="dxhoverend">
    <div *dxTemplate="let data of 'content'">
        <p>Popover content</p>
    </div>
</dx-popover>
import { DxPopoverModule } from 'devextreme-angular'
// ...
export class AppComponent {
    // ...
}
@NgModule({
    imports: [
        // ...
        DxPopoverModule
    ],
    // ...
})
AngularJS
HTML
<div id="targetElement"></div>
<div dx-popover="{
    target: '#targetElement',
    showEvent: 'dxhoverstart',
    hideEvent: 'dxhoverend'
}">
    <p>Popover content</p>
</div>
Knockout
HTML
<div id="targetElement"></div>
<div data-bind="dxPopover: {
    target: '#targetElement',
    showEvent: 'dxhoverstart',
    hideEvent: 'dxhoverend'
}">
    <p>Popover content</p>
</div>
ASP.NET MVC Controls
Razor C#
Razor VB
@(Html.DevExtreme().Popover()
    .ID("popover")
    .Target("#targetElement")
    .ShowEvent("dxhoverstart")
    .HideEvent("dxhoverend")
    .ContentTemplate(@<text>
        <p>Popover content</p>
    </text>)
)
<div id="targetElement"></div>
@Code
    Html.DevExtreme().Popover() _
        .ID("popover") _
        .Target("#targetElement") _
        .ShowEvent("dxhoverstart") _
        .HideEvent("dxhoverend") _
        .ContentTemplate(Sub()
            @<text>
                <p>Popover content</p>
            </text>
        End Sub).Render()
End Code
<div id="targetElement"></div>

View Demo Watch Video

See Also

Configuration

An object defining configuration options for the Popover widget.

Name Description
animation

Configures widget visibility animations. This object contains two fields: show and hide.

closeOnBackButton

A Boolean value specifying whether or not the widget is closed if a user presses the Back hardware button.

closeOnOutsideClick

A Boolean value specifying whether or not the widget is closed if a user clicks outside of the popover window and outside the target element.

contentTemplate

Specifies a custom template for the widget content.

deferRendering

Specifies whether to render the widget's content when it is displayed. If false, the content is rendered immediately.

disabled

Specifies whether the widget responds to user interaction.

elementAttr

Specifies the attributes to be attached to the widget's root element.

height

Specifies the widget's height.

hideEvent

Specifies options of popover hiding.

hint

Specifies text for a hint that appears when a user pauses on the widget.

hoverStateEnabled

Specifies whether the widget changes its state when a user pauses on it.

maxHeight

Specifies the maximum height the widget can reach while resizing.

maxWidth

Specifies the maximum width the widget can reach while resizing.

minHeight

Specifies the minimum height the widget can reach while resizing.

minWidth

Specifies the minimum width the widget can reach while resizing.

onContentReady

A handler for the contentReady event. Executed when the widget's content is ready. This handler may be executed multiple times during the widget's lifetime depending on the number of times its content changes.

onDisposing

A handler for the disposing event. Executed when the widget is removed from the DOM using the remove(), empty(), or html() jQuery methods only.

onHidden

A handler for the hidden event.

onHiding

A handler for the hiding event.

onInitialized

A handler for the initialized event. Executed only once, after the widget is initialized.

onOptionChanged

A handler for the optionChanged event. Executed after an option of the widget is changed.

onShowing

A handler for the showing event.

onShown

A handler for the shown event.

onTitleRendered

A handler for the titleRendered event.

position

An object defining widget positioning options.

rtlEnabled

Switches the widget to a right-to-left representation.

shading

A Boolean value specifying whether or not the main screen is inactive while the widget is active.

shadingColor

Specifies the shading color.

showCloseButton

Specifies whether or not the widget displays the Close button.

showEvent

Specifies options for displaying the widget.

showTitle

A Boolean value specifying whether or not to display the title in the overlay window.

target

The target element associated with a popover.

title

The title in the overlay window.

titleTemplate

Specifies a custom template for the widget title. Does not apply if the title is defined.

toolbarItems

Specifies items displayed on the top or bottom toolbar of the popup window.

visible

A Boolean value specifying whether or not the widget is visible.

width

Specifies the widget's width.

Methods

This section describes members used to manipulate the widget.

Name Description
beginUpdate()

Prevents the widget from refreshing until the endUpdate() method is called.

content()

Gets the widget's content.

defaultOptions(rule)

Specifies the device-dependent default configuration options for this component.

dispose()

Disposes of all the resources allocated to the Popover instance.

element()

Gets the root widget element.

endUpdate()

Refreshes the widget after a call of the beginUpdate() method.

getInstance(element)

Gets the instance of a widget found using its DOM node.

hide()

Hides the widget.

instance()

Gets the widget's instance. Use it to access other methods of the widget.

off(eventName)

Detaches all event handlers from a single event.

off(eventName, eventHandler)

Detaches a particular event handler from a single event.

on(eventName, eventHandler)

Subscribes to an event.

on(events)

Subscribes to events.

option()

Gets all widget options.

option(optionName)

Gets the value of a single option.

option(optionName, optionValue)

Updates the value of a single option.

option(options)

Updates the values of several options.

repaint()

Recalculates the widget's size and position without rerendering.

show()

Shows the widget.

show(target)

Shows the widget for a target element.

toggle(showing)

Shows or hides the widget depending on the argument.

Events

This section describes events fired by this widget.

Name Description
contentReady

Raised when the widget's content is ready.

disposing

Raised when the widget is removed from the DOM using the remove(), empty(), or html() jQuery methods only.

hidden

Fires after the overlay is hidden.

hiding

Fires before hiding the overlay.

initialized

Raised only once, after the widget is initialized.

optionChanged

Raised after a widget option is changed.

showing

Fires before showing the overlay.

shown

Fires after the overlay is shown.

titleRendered

Fires after the widget title is rendered.

See Also