Multiple sides
fortael opened this issue · 4 comments
With this library possible to do menu on both sides? Because i can't.
2 problems:
- Swipe event working wrong with 2 sides. Maybe possible to handle that event by myself?
- Both menus are visible
Will be useful if there would be mod for <html>
tag.
slideout-open slideout-open--left
slideout-open slideout-open--right
It will be very painful for my project to change library to another one.
Thanks for any answer.
did you find any solution? Because I have the same issue. @fortael
@siddarthvader Yes...more or less. The main problem with events, that both sides are exists. If you'll try to hide second one with display:none
then laggs on closing.
.slideout-open--right .slideout-menu-left {
visibility: hidden;
pointer-events: none;
z-index: -1;
}
Try hide second one in this way. Then listen beforeopen
.
.slideout-open--right
will hide .slideout-menu-left
. If you will open it very slow with swipe, then you will see left menu for a moment. For this i have only idea - use hammer.js to handle events by myself.
But for now at least both works okay.
worked like charm. Thanks.
[EDITED]: there are some edge cases where it creates problem, but i think that can be taken care of.
slideLeft.on('open', () => {
document.getElementById('kickstart').classList.add('slideout-open--left');
slideRight.disableTouch();
});
slideLeft.on('close', () => {
document.getElementById('kickstart').classList.remove('slideout-open--left');
slideRight.enableTouch();
});
slideRight.on('open', () => {
document.getElementById('kickstart').classList.add('slideout-open--right');
slideLeft.disableTouch();
});
slideRight.on('close', () => {
document.getElementById('kickstart').classList.remove('slideout-open--right');
slideLeft.enableTouch();
});`
I did something like this and it worked for me like charm.