【发布时间】:2014-05-15 23:20:41
【问题描述】:
我正在制作一个简单的 jquery 幻灯片,它可以改变绝对重叠的 div 的不透明度。我的问题是因为它们是绝对定位的,它们不再在流程中,但我需要它们。所以我需要三件事之一。
找到一种不使用绝对位置来堆叠 div 的方法。或
找到一种将绝对定位的 div 放回流程中的方法。或
想办法在不使用堆叠 div 的情况下制作幻灯片。
html:
<body>
I come before<br />
<div id="box_foot">
<div id="tests">
<div class="testimony" style="opacity: 1;">
<div class="bluequote">One</div>
</div>
<div class="testimony">
<div class="bluequote">Multiple lines<br />Multiple lines<br /></div>
</div>
<div class="testimony">
<div class="bluequote">Two</div>
</div>
<div class="testimony">
<div class="bluequote">Three</div>
</div>
<div class="testimony">
<div class="bluequote">Four</div>
</div>
<div class="testimony">
<div class="bluequote">Five</div>
</div>
<div class="testimony">
<div class="bluequote">Six</div>
</div>
<div class="testimony">
<div class="bluequote">Seven</div>
</div>
</div>
</div>
I come after<br />
</body>
css:
#box_foot .testimony {
position:absolute;
opacity:0;
}
幻灯片功能:
$(document).ready(function(){
var count = 1;
var $slides = $('.testimony');
var speed = 1000;
setInterval(rotQuote,speed);
function rotQuote(){
if(count < $slides.length){
$('.testimony:nth-child(' + count + ')').animate({opacity:0},1000);
count++;
$('.testimony:nth-child(' + count + ')').animate({opacity:1}, 1000);
} else {
$('.testimony:nth-child(' + count + ')').animate({opacity:0}, 1000);
count = 1;
$('.testimony:nth-child(' + count + ')').animate({opacity:1}, 1000);
}
}
});
我可以设置一个固定的高度,但这不允许布局/响应的灵活性。
【问题讨论】: