Multiple sidebar in same position in EJ2 JavaScript Sidebar control

2 May 20238 minutes to read

You can initialize Sidebar at the left positions by using the position property. It will automatically adjust the width of the main content.

You can also initialize the another sidebar on the same position by adjusting the width of the first sidebar.

The following example demonstrate how to align the multiple sidebar on the same position.

ej.base.enableRipple(true);

//Dock Sidebar initialization
var dockBar= new ej.navigations.Sidebar({
        width: '220px',
        dockSize: '72px',
        enableDock: true,
        type:'Push',
        target:'e-main-content',
        zIndex:3000
});
dockBar.appendTo('#dockSidebar');
//end of DockSidebar initialization

//Default Sidebar initialization
var defaultSidebar = new ej.navigations.Sidebar({
    target:'e-main-content',
      type:"Push"
 });
defaultSidebar.appendTo('#default-sidebar');
//end of DefaultSidebar initialization


//switch the expand and collapse state
document.getElementById('buttonClick').onclick = function () {
    defaultSidebar.toggle();
};
<!DOCTYPE html><html lang="en"><head>
    <title>Essential JS 2 Sidebar</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="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.3/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-base/styles/material.css" rel="stylesheet">
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-buttons/styles/material.css" rel="stylesheet">
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-lists/styles/material.css" rel="stylesheet">
    <link href="https://cdn.syncfusion.com/ej2/25.1.35/ej2-navigations/styles/material.css" rel="stylesheet">
    <link href="styles.css" rel="stylesheet">
    
    
<script src="https://cdn.syncfusion.com/ej2/25.1.35/dist/ej2.min.js" type="text/javascript"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>

<body>
    
    <div id="container">
        <!-- first sidebar element -->
        <aside id="default-sidebar">
            <div class="sub-title">
              <h3> First Sidebar</h3>
                Place your primary content here.
            </div>
        </aside>
           <!-- dock sidebar element -->
        <aside id="dockSidebar">
            <div class="dock">
                <ul>
                    <li class="sidebar-item" id="toggle">
                        <span class="e-icons expand"></span>
                        <span class="e-text" title="menu">Menu</span>
                    </li>
                    <li class="sidebar-item">
                        <span class="e-icons home"></span>
                        <span class="e-text" title="home">Home</span>
                    </li>
                    <li class="sidebar-item">
                        <span class="e-icons profile"></span>
                        <span class="e-text" title="profile">Profile</span>
                    </li>
                    <li class="sidebar-item">
                        <span class="e-icons info"></span>
                        <span class="e-text" title="info">Info</span>
                    </li>
                    <li class="sidebar-item">
                        <span class="e-icons settings"></span>
                        <span class="e-text" title="settings">Settings</span>
                    </li>
                </ul>
            </div>
        </aside>
        <!-- main content declaration -->
        <div class="e-main-content container-fluid col-md-12">
            <div class="title">Main content</div>
            <div class="sub-title">
                <p>Click the radio button to switch the sidebar position</p>
                <div class="center-align">
                    <div class="column">
                        <button class="e-btn e-info" id="buttonClick">Open/close hidden Sidebar</button>
                    </div>
                </div>
            </div>
        </div>
        <!-- end of main content -->
    </div>



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