Box
Map
Row
A newer version of this page is available. Switch to the current version.

JavaScript/jQuery TreeList - scrolling

Configures scrolling.

Type:

Object

Scrolling allows a user to browse data left outside the current viewport. The UI component provides several scrolling modes detailed in the mode property description.

See Also

columnRenderingMode

Specifies the rendering mode for columns. Applies when columns are left outside the viewport. Requires the columnWidth, columnAutoWidth, or width (for all columns) property specified.

Type:

String

Default Value: 'standard'
Accepted Values: 'standard' | 'virtual'

The following rendering modes are available in the UI component:

  • "standard"
    Renders all columns at once.

  • "virtual"
    Renders only those columns that get into the viewport.

View Demo

mode

Specifies the scrolling mode.

Type:

String

Default Value: 'virtual'
Accepted Values: 'standard' | 'virtual'

The following scrolling modes are available in the UI component:

  • Standard
    Rows are rendered at once or by pages if paging is enabled. Scrolling appears only if all the rows cannot fit into the UI component's height.

  • Virtual
    This mode is an alternative to paging where pages are rendered when they get into the viewport and removed once they leave it. Use this mode if a user should be able to scroll data by pages. Node selection in virtual scroll mode with Shift+Click does not work in the following cases:

    • Deferred selection is enabled.
    • Rows grouping is enabled.
    • The allowSelectAll property is disabled.

Regardless of the scrolling mode, you can use the paging.pageSize property to specify the number of rows on a page.

preloadEnabled

Specifies whether the UI component should load adjacent pages. Applies only if scrolling.mode is "virtual".

Type:

Boolean

Default Value: false

In virtual scrolling mode, pages are loaded on demand. If you set this property to true, the adjacent pages are loaded in advance for smoother scrolling. This property can reduce the performance on older devices.

rowRenderingMode

Specifies the rendering mode for loaded rows.

Type:

String

Default Value: 'standard'
Accepted Values: 'standard' | 'virtual'

Unlike the mode property, which defines when to load data for rows, this property defines when to render them. The following rendering modes are available:

  • "standard"
    Renders all the loaded rows at once.

  • "virtual"
    Renders only those rows that get into the viewport. Use this mode if the pageSize is large. Rows that are being currently rendered can be shown as grey boxes.

View Demo

scrollByContent

Specifies whether a user can scroll the content with a swipe gesture. Applies only if useNative is false.

Type:

Boolean

Default Value: true, false (non-touch devices)

scrollByThumb

Specifies whether a user can scroll the content with the scrollbar. Applies only if useNative is false.

Type:

Boolean

Default Value: false

showScrollbar

Specifies when to show scrollbars. Applies only if useNative is false.

Type:

String

Default Value: 'onScroll', 'onHover' (desktop)
Accepted Values: 'always' | 'never' | 'onHover' | 'onScroll'

The scrollbars help to scroll the content vertically and horizontally. Vertical scrolling is available when all the rows do not fit in the UI component's height. Horizontal scrolling is available when all the columns do not fit in the UI component's width, which can happen when columns have fixed widths or the columnAutoWidth property is set to true.

useNative

Specifies whether the UI component should use native or simulated scrolling.

Type:

Boolean

|

String

Default Value: 'auto'
Accepted Values: 'auto'

By default, the UI component employs native scrolling on most platforms, except non-Mac desktops and devices based on Android older than version 4. To employ native scrolling on all platforms without exception, assign true to this property. If you assign false, the UI component simulates scrolling on all platforms.