This is a simple wrapper around the ViewWatcher. If you are using the JavaScript API, you should use the ViewWatcher directly. The purpose of this widget is to expose the watcher's ability to track an element's position across the viewport (or a given root element) and set relevant CSS properties via the HTML API. See ViewWatcher.trackView.


To use with auto-widgets (HTML API) (see settings.autoWidgets), the following CSS classes or data attributes are recognized:

  • lisn-track-view class or data-lisn-track-view attribute set on the element that constitutes the widget.

See below examples for what values you can use set for the data attributes in order to modify the configuration of the automatically created widget.

Note that the root margin value can either be comma-separated or space-separated.

This will track the element across the viewport and set the relevant CSS properties.

<div class="lisn-track-view"></div>

As above but with custom settings.

<div id="myRoot"></div>
<div data-lisn-track-view="root=#myRoot
| root-margin=100px,50px
| threshold=0,0.5"
></div>

Hierarchy (View Summary)

Methods

Constructors

Properties

destroy: () => Promise<void>

Undoes all modifications to the element and returns it to its original state.

You will need to recreate it if you want to enable its functionality again.

disable: () => Promise<void>

Disables the functionality of the widget. What this means is specific to each widget.

enable: () => Promise<void>

Re-enables the functionality of the widget. What this means is specific to each widget.

getElement: () => Element

Returns the element passed to the widget constructor.

isDestroyed: () => boolean

Returns true if the widget is destroyed.

isDisabled: () => boolean

Returns true if the widget is currently disabled.

onDestroy: (handler: WidgetHandler) => void

The given handler will be called when the widget is destroyed.

onDisable: (handler: WidgetHandler) => void

The given handler will be called when the widget is disabled.

onEnable: (handler: WidgetHandler) => void

The given handler will be called when the widget is enabled.

toggleEnable: () => Promise<void>

Re-enables the widget if disabled, otherwise disables it.