I have a menu which slide toggles in and out on click, but at the same time i'd like to have a grey background around the menu to fade toggle in and out. I don't want to do it with fadeToggle but with toggleClass, in order to be able to add more styles if necessary.
The toggleClass doesn't work at all, I can't figure out why. Thanks a lot for your help!!
$(document).ready(function(e) {
$('#button').click(function() {
$('#menu').slideToggle();
$('#bgr').toggleClass('display');
});
});
#menu {
display:none;
position: absolute;
top:40px;
right: 10%;
z-index:10;
width: 30%;
height:400px;
background: lightblue;}
#bgr {
display:none;
opacity:0;
position:absolute;
top:0;
left:0;
z-index:1;
height: 100%;
width:100%;
background: grey;
-webkit-transition:opacity 1s;
transition:opacity 1s;
}
#button {cursor: pointer;}
#button p
{ position: absolute;
top:0;
right:10%;
z-index:100;
margin:0;
color:lightblue;
font-size:2em;
}
.display {
display:block;
opacity:1;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<div id="button">
<p>menu</p>
</div>
<div id="menu"></div>
<div id="bgr"></div>