Hi: I want the overlay window to appear only when the user scroll up. Now, the overlay window appear when user scroll down as well as up. Thanks for your helps Regards Anura
HTML:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="collapsible.css">
<style>
html,
body {
margin: 0;
}
.sidenav {
height: 72%;
width: 0;
position: fixed;
top: 0;
right:0;
scroll-margin-right: 0;
background-color: #6a6c6d;
overflow-x: hidden;
transition: 0.5s;
padding-top:50px;
}
.sidenav a {
padding: 8px 8px 10px 15px;
text-decoration: none;
font-size: 16px;
color: black ;
display: block;
transition: 0.3s;
}
.sidenav a:hover {
color: #f1f1f1;
}
.sidenav .closebtn {
position: absolute;
top: 0;
right: 25px;
font-size: 50px;
}
#container{
display: flex;
padding: 0px 0px 0px 0px;
}
@media screen and (max-height: 450px) {
.sidenav {padding-top: 0px;}
.sidenav a {font-size: 60px;}
}
.mtext {
color: black;
float: right;
margin: .00rem 0.2375rem 0 0;
font-family: "Merriweather Sans", sans-serif;
text-transform: uppercase;
font-size: 24px;}
</style>
</head>
<body>
<div class="sidenav" id="sidenav">
<a href="javascript:void(0)" id="closebtn" class="closebtn" onclick="closeNav()"> ×</a>
<a href="xx.html"> Mission</a>
<a href="#">Services</a>
</div>
<div id="menu">
<span class="mtext" style="font-size:30px;cursor:pointer" onclick="openNav()">
☰Menu</span>
</div>
<button class="collapsible">Learning javascript 1</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<button class="collapsible">Learning javascript 2</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<button class="collapsible">Learning javascript 3</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<button class="collapsible">Learning javascript 4</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p><br>
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<button class="collapsible">Learning javascript 5</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<button class="collapsible">Learning javascript 6</button>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.</p>
</div>
<script>
var sidenav = document.getElementById("sidenav");
menu.onclick = function(event){
openNav();
event.stopPropagation();
}
function openNav() {
document.getElementById("sidenav").style.width = "30%";
}
function closeNav() {
document.getElementById("sidenav").style.width = "0";
}
window.onclick = function(event) {
if ( sidenav.style.width != 0 && event.target != sidenav ) {
closeNav();
}
}
</script>
<script>
var coll = document.getElementsByClassName("collapsible");
var i;
for (i = 0; i < coll.length; i++) {
coll[i].addEventListener("click", function() {
this.classList.toggle("active");
var content = this.nextElementSibling;
if (content.style.maxHeight){
content.style.maxHeight = null;
} else {
content.style.maxHeight = content.scrollHeight + "px";
}
});
}
</script>
<script>
// Need only to appear the overlay window, only when user scroll up
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20)
openNav()
}
</script>
</body>
</html>