JSFiddle - React, Tailwind, and code Playground
by lemon kazi
HTML
<script src="https://code.jquery.com/jquery-3.4.0.js"></script>
<div class="btngroup">
<button class="btn-default openUserEditBox">Show Drawer</button>
<button class="btn-default closeUserEditBox">Hide Drawer</button>
</div>
<div class="userForm">
<div class="user-drawer">
<div class="user-menu">
<h1>Edit User</h1>
</div>
</div>
</div>
CSS
.user-drawer {
position: relative;
width: 600px;
top: 50px;
background-color: #f2f2f2;
border: 1px solid #bbbbbb;
min-height: 450px;
float: right;
display: none;
left: 100px;
animation: slide-out 2s forwards;
-webkit-animation: slide-out 2s forwards;
}
.user-drawer.selected{
display: block;
animation: slide-in 2s forwards;
-webkit-animation: slide-in 2s forwards;
}
.user-menu {
padding: 10px 20px;
position: absolute;
}
.btn-default {
background-color: #fff;
padding: 10px;
border: 1px solid #bbbbbb;
width: 150px;
}
.btn-default:hover {
cursor: pointer;
box-shadow: inset 0 1px 3px 0 #bbbbbb;
}
.btngroup {
float: right
}
@-webkit-keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes slide-out {
0% {
transform: translateX(0%);
}
100% {
display:none;
}
}
@-webkit-keyframes slide-out {
0% {
-webkit-transform: translateX(0%);
}
100% {
display:none;
}
}
@keyframes slide-in {
0 {
-webkit-transform: translateX(100%);
}
100% {
-webkit-transform: translateX(0%);
display:block;
}
}
@-webkit-keyframes slide-in {
0 {
transform: translateX(100%);
}
100% {
transform: translateX(0%);
display:block;
}
}
/* {
position: relative;
left: 20px;
} */
JavaScript
$(document).ready(function () {
$(".openUserEditBox").on("click", function () {
//$(".user-drawer").show();
if ($('.user-drawer').hasClass('dismiss')) {
$('.user-drawer').removeClass('dismiss').addClass('selected');
}else{
$('.user-drawer').addClass('selected');
}
});
$('.closeUserEditBox').click(function(event) {
if ($('.user-drawer').hasClass('selected')) {
$('.user-drawer').removeClass('selected');
}
event.preventDefault();
});
});