Search results

Customization

The navigator can be customized using the “navigatorStyleSettings” property. The “selectedRegionColor” property is used to specify the color for selected region whereas the “unSelectedRegionColor” property is used to specify the color for unselected region.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            navigatorStyleSettings: {
                unSelectedRegionColor: 'skyblue',
                selectedRegionColor: 'pink'
            },
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container" style="margin-top: 125px">
        <div id="element"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

Thumb

The thumb property provides options to customize the border, fill, size, and type of thumb. The types of thumb can be “Circle” and “Rectangle”.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            navigatorStyleSettings: {
           thumb:{
           type: 'Rectangle',
           border: { width: 2, color: 'red'},
           fill: 'pink'
             }
            },
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container" style="margin-top: 125px">
        <div id="element"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

Border customization

Using the “navigatorBorder” property, you can customize the “width” and “color” of the range navigator.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            navigatorBorder : { width: 4, color: 'green'},
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container" style="margin-top: 125px">
        <div id="element"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

Deferred update

If the “enableDeferredUpdate” property is set to true, then the changed event will be fired after dragging the slider. If the “enableDeferredUpdate” is false, then the changed event will be fired when dragging the slider. By default, the “enableDeferredUpdate” is set to false.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            enableDeferredUpdate: true,
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container">
        <div id="element"></div>
        <div id="Chart"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

Allow snapping

The “allowSnapping” property toggles the placement of the slider exactly to the left or on the nearest interval.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            allowSnapping: true,
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container" style="margin-top: 125px">
        <div id="element"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

Animation

The speed of the animation can be controlled using the “animationDuration” property. The default value of the “animationDuration” property is 500 milliseconds.

Source
Preview
index.js
index.html
var range = new ej.charts.RangeNavigator({
            valueType: 'DateTime',
            value: [new Date('2017-09-01'), new Date('2018-02-01')],
            tooltip: { enable: true },
            labelFormat: 'MMM-yy',
            animationDuration: 2000,
            series: [{
                    dataSource: datasrc, xName: 'x', yName: 'y', type: 'Area', width: 2,
                }],
        });
range.appendTo('#element');
<!DOCTYPE html><html lang="en"><head>
    <title>EJ2 Animation</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Typescript UI Controls">
    <meta name="author" content="Syncfusion">
    <link href="index.css" rel="stylesheet">
    
    
<script src="//cdn.syncfusion.com/ej2/dist/ej2.min.js" type="text/javascript"></script>
</head>

<body>
    
    <div id="container" style="margin-top: 125px">
        <div id="element"></div>
    </div>


<script>
var ele = document.getElementById('container');
if(ele) {
    ele.style.visibility = "visible";
 }   
        </script>
<script src="index.js" type="text/javascript"></script>
</body></html>

See Also