我正在创建一个可滑动的菜单,除了一个方面它正在工作。我希望菜单的高度始终为100%。无论用户在页面上滚动了多远。不过,无论何时将其设置为height: 100%;
,菜单都不会滑动。它只在高度设置为height: 100vh
时才起作用,但正如您在我的小提琴中看到的,这会将屏幕上的#main
div推下。我希望主div能够处于顶端,并且可以通过菜单打开它。兄弟div未显示高度为100%
请注意,你必须向左滑动,打开菜单:
我希望它像这样打开:
html, body {
padding: 0; margin: 0;
}
div.box-parent {
height: 100vh;
/*height: 100%;*/
}
div.box {
width: 50%;
height: 100%;
background: #108040;
margin-left: -101%;
}
div.box.swipeleft {
background: #7ACEF4;
margin-left: 50%;
}
#main {
height: 800px;
width: 100%;
background: green;
}
<div class="box-parent">
<div class="box"></div>
</div>
<div id="main"></div>
$(function(){
$("body").on("swiperight", swiperightHandler);
function swiperightHandler(event){
$('.nav-panel').addClass("swiperight");
}
});
$(function(){
$("body").on("swipeleft", swipeleftHandler);
function swipeleftHandler(event){
$('.nav-panel').addClass("swipeleft");
}
});
$.mobile.loading().hide();
@Paul它可以工作,但'.nav-panel'是另一种内容。它只需要比主要内容更大的“z-index”。添加'。nav-panel {z-index:10;}'并且它会工作。 – Moob
非常感谢您的支持!我真的很感激 ! – Paul
你知道为什么当我添加更多的JavaScript以便能够用刷卡关闭它时,为什么这只能工作一次?我的意思是说,我可以轻轻扫过一次,然后在它不会继续滑动。 – Paul