我正在尝试使用 Bootstrap 的 Carousel 来处理高度不同的内容。高度将根据浏览器宽度而有所不同,并且轮播下方有内容。我想使用 CSS 动画幻灯片之间的高度变化。在朋友的帮助下,我几乎可以在 FireFox 中进行此操作(第一张幻灯片跳转,其余为动画),但 Chrome 中的滑动动画出现了一个明显的错误。
任何输入都会很棒,即使您认为我应该以完全不同的方式处理高度动画,请告诉我!
这是我认为重要的 JS 和 CSS,但整个事情都在 JS Fiddle 上:http: //jsfiddle.net/tkDCr/
JS
$('#myCarousel').carousel({
interval: false
});
$('#myCarousel').bind('slid', function(e) {
console.log('slid',e);
});
$('#myCarousel').bind('slide', function(e) {
console.log('slide',e);
var next_h = $(e.relatedTarget).outerHeight();
console.log(next_h);
$('.carousel').css('height', next_h);
});
通过注释掉 JavaScript 的第 12 行和第 13 行,您可以看到错误显然是由使用来自 '$(e.relatedTarget).outerHeight();' 的数据分配变量 next_h 引起的。即使不使用该变量,它仍然会破坏动画。注释掉 11,12 和 13,将向您展示轮播如何正常运行。
CSS
.carousel {
width: 80%;
margin-left: auto;
margin-right: auto;
background: lightgoldenrodyellow;
-webkit-transition: height .5s ease;
-moz-transition: height .5s ease;
-ms-transition: height .5s ease;
-o-transition: height .5s ease;
transition: height .5s ease;
}
先感谢您。