/* ------------------------------------------------------------------------------ * * # Sticky sidebar with custom scrollbar * * Specific JS code additions for layout_sidebar_sticky_custom.html page * * Version: 1.0 * Latest update: Aug 1, 2015 * * ---------------------------------------------------------------------------- */ $(function() { // Mini sidebar // ------------------------- // Setup function miniSidebar() { if ($('body').hasClass('sidebar-xs')) { $('.sidebar-main.sidebar-fixed .sidebar-content').on('mouseenter', function () { if ($('body').hasClass('sidebar-xs')) { // Expand fixed navbar $('body').removeClass('sidebar-xs').addClass('sidebar-fixed-expanded'); } }).on('mouseleave', function () { if ($('body').hasClass('sidebar-fixed-expanded')) { // Collapse fixed navbar $('body').removeClass('sidebar-fixed-expanded').addClass('sidebar-xs'); } }); } } // Initialize miniSidebar(); // Toggle mini sidebar $('.sidebar-main-toggle').on('click', function (e) { // Initialize mini sidebar miniSidebar(); }); // Nice scroll // ------------------------------ // Setup function initScroll() { $(".sidebar-fixed .sidebar-content").niceScroll({ mousescrollstep: 100, cursorcolor: '#ccc', cursorborder: '', cursorwidth: 3, hidecursordelay: 100, autohidemode: 'scroll', horizrailenabled: false, preservenativescrolling: false, railpadding: { right: 0.5, top: 1.5, bottom: 1.5 } }); } // Remove function removeScroll() { $(".sidebar-fixed .sidebar-content").getNiceScroll().remove(); $(".sidebar-fixed .sidebar-content").removeAttr('style').removeAttr('tabindex'); } // Initialize initScroll(); // Remove scrollbar on mobile $(window).on('resize', function() { setTimeout(function() { if($(window).width() <= 768) { // Remove nicescroll on mobiles removeScroll(); } else { // Init scrollbar initScroll(); } }, 100); }).resize(); });