可滚动滑出菜单

时间:2014-08-04 13:59:21

标签: html css css3 transform css-transitions

我正在尝试使用转换创建一个带滑动过渡的移动幻灯片菜单。

菜单需要垂直滚动,填充设备的整个宽度和高度,但也阻止滚动下面的主文档。

我在阻止滚动主文档时遇到问题,同时保持过渡效果。

样本:

http://jsfiddle.net/e54nj/5/embedded/result/

http://fiddle.jshell.net/e54nj/5/show/light/

JS:

$('.btn-contacts').on('click', function() {
    if ($('#mobile-contacts').hasClass('open')) {
        $('#mobile-contacts').removeClass('open');
        $('body').removeClass('noscroll');
    } else {
        $('#mobile-contacts').addClass('open');
        $('body').addClass('noscroll');
    }
});

CSS:

body.noscroll{overflow:hidden;width:100%;}
#header-bar{position:fixed;top:0px;left:0;width:100%;height:46px;background-color:#8ba6bc;z-index:998;}
#header-bar .btn-add-event{margin:6px 0;}
#header-bar .btn-contacts{float:right;color:#fff;font-size:22px;line-height:46px;padding:0 15px;cursor:pointer;}
#mobile-contacts{background-color:#8ba6bc;position:fixed;top:46px;bottom:0;left:0;right:0;z-index:999;}
#mobile-contacts{-webkit-transition:-webkit-transform 200ms linear;transition:transform 200ms linear;-webkit-transform: translateX(100%);-ms-transform:translateX(100%);transform: translateX(100%);}
#mobile-contacts.open{-webkit-transform: translateX(0%);-ms-transform:translateX(0%);transform: translateX(0%);}

如果我没有将noscroll类添加到正文中,则转换工作正常。

0 个答案:

没有答案