我正在用 JQuery 制作一个非常基本的动画。基本上我所拥有的是一个宽度为 60%、高度为 80% 的 DIV,它包含一本手册。我的目标是,当您浏览手册中的页面时,当前页面向上移动并消失,而下一页从底部出现。
我已经足够接近了,但是出了点问题,我不知道如何修复它 - 页面 DIV 在其容器外可见。他们的 top 属性设置为 110% 但我可以看到它没有生效。它们的位置仅受其上方的菜单表影响。
所以我的问题,真的是 -我如何让一个 DIV 在它的容器之外不可见,但不改变整个 DIV 的可见性或显示,所以在向上移动时会看到文本 - 但只有放在容器上的文本和不在它之外。
.manualPage {
color:rgba(241, 241, 241,1.0);
top:110%;
text-align:left;
left:0%;
cursor:default;
z-index:30;
font-family: "Open Sans", sans-serif;
font-size:11pt;
width:100%;
height:100%;
}
.BigWindow {
position:absolute;
width:60%;
height:80%;
top:10%;
display:inline-block;
left:-70%;
background-repeat:repeat;
color:rgba(241, 241, 241,1.0);
font-family: "Open Sans", sans-serif;
font-size:12pt;
text-align:center;
cursor:default;
z-index:30;
}
注意 BigWindow 是容器,manualPage 是页面。
这是功能,但我认为CSS问题是首先要解决的问题:
var currentPage = -1;
function setManualPage(num) {
if ($('#manualMenu').css('display') != 'none')
$('#manualMenu').fadeOut(750);
if (currentPage != -1) {
$('#page' + currentPage).animate({ top: '-100%' }, screen.availHeight / 2, function () { $('#page' + currentPage).css('top', '110%'); });
}
if (num != -1)
$('#page' + num).animate({ top: '0%' }, screen.availHeight / 2);
currentPage = num;
}