JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://rawgithub.com/egeriis/jquery-scrollable-sticky/master/dist/jquery.scrollable-sticky.min.js"></script>
<div class="col">
<div class="menu sticky"><h1>No scroll</h1><ul></ul></div>
</div>
<div class="col">
<div class="menu"><h1>Scrolls+sticks</h1><ul></ul></div>
</div>
<p><button>Enable scrollableSticky</button></p>
CSS
body {
margin: 0;
}
p {
text-align: center;
float: left;
height: 3000px;
}
.col {
float: left;
}
.menu {
width: 200px;
background: #f0f0f0;
overflow: hidden;
}
.menu.sticky {
position: fixed;
top: 0;
right: 0;
}
.menu ul, .menu ul li {
margin: 0;
padding: 0;
list-style: none;
}
}
JavaScript
// Fill menus with dummy content
for (var i = 0; i < 75; i++) {
$('.menu ul')
.append('<li>Lorem ipsum dolor</li>');
}
$('button').click(function(){
$('.menu:not(.sticky)').scrollableSticky({ offset: 50 });
});