我正在使用jquery cycle插件和jquery。
当循环div 的高度发生变化时,我会对 jquery 循环div 进行动画处理。下面的div 根据高度向上或向下。
问题是下面的div 在向下滚动时会获得(白色)背景。我希望下面的div 始终保持透明。(在我的示例中,我希望内容div始终透明)
这是为循环的div 设置动画的代码
function onAfter(curr, next, opts, fwd) {
var index = opts.currSlide;
$('#prev,#prev2,#prev3,#prev4,#prev5')[index == 0 ? 'hide' : 'show']();
$('#next,#next2,#next3,#next4,#next5')[index == opts.slideCount - 1 ? 'hide' : 'show']();
//get the height of the current slide
var $ht = $(this).height();
//set the container's height to that of the current slide
$(this).parent().animate({height: $ht});
}
$('.subheader').cycle({after: onAfter});
这很难解释,所以我做了一个jsfiddle来展示它:jsFiddle
正在发生的事情是,overflow: hidden
在动画化时被添加到subheader
div
中。这样做会使它剪切文本。
如果您自己对其进行动画处理并且仅设置height
,则应防止问题发生。
或者,我能够使用!important
样式规则绕过它:小提琴
.subheader {
overflow: visible !important;
}
这是有效的!important
因为样式规则比内联样式具有更大的权重(除非内联样式也有!important
,在这种情况下,这将获胜)。