【发布时间】:2014-07-12 23:37:07
【问题描述】:
我正在尝试为一些以象限格式布局的 html 元素创建动画。单击每个 div 时,我希望它们扩大到容器高度和宽度的 100%,然后再次单击折叠回它们的初始大小。这是一个类似于浏览器最大化和折叠回其原始大小的动画。
我目前的工作正常,我宁愿让动画不要将其他元素推离屏幕,也希望它在标题消失时不要跳转。
我该怎么做?随意使用 jQuery 动画或 css3 动画。谢谢!
这是我目前拥有的演示:JSFIDDLE Javascript
$(document).ready(function () {
$('.box1').on('click', function() {
$(this).animate({height: "100%", width: "100%"}, 500);
});
});
HTML
<div id="page-wrapper">
<div class="header"></div>
<div class="box-container clearfix">
<div class="box1"></div>
<div class="box2"></div>
<div class="box3"></div>
<div class="box4"></div>
</div>
</div>
CSS
#page-wrapper {
width: 400px;
height: 480px;
border: 1px solid lightblue;
}
.box-container {
width: 100%;
height: 100%;
}
.header {
background: black;
height: 40px;
width: 100%;
}
.box1{
background: yellow;
height: 190px;
width: 170px;
margin: 10px;
float: left;
}
.box2 {
background: red;
height: 190px;
width: 180px;
margin: 10px;
float: right;
}
.box3 {
background: green;
height: 190px;
width: 170px;
margin: 10px;
float: left;
}
.box4 {
background: blue;
height: 190px;
width: 180px;
float: right;
margin: 10px;
}
【问题讨论】:
-
这很好!唯一的问题是绿色框似乎跳出框架,并且我想如果标题消失或重叠..
-
给我一些时间来处理它。 :)
-
谢谢,非常感谢。
-
好的,这是怎么回事?我希望它运作良好,但不同浏览器的动画可能会有所不同。我正在使用 chrome,它工作得很好。我遇到的唯一问题是 div 不会从它们的原始点增长,但这需要大量的编码来修复。不过,跳跃的 div 不应该那么明显。 jsfiddle.net/48vh9/22
-
另一个更新....jsfiddle.net/48vh9/24 这是今晚的我,如果这很好,请接受我的回答?我敢肯定,从这里开始,您可以轻松修复代码。
标签: jquery html css jquery-animate css-animations