在使用jQuery';什么是幻灯片?
我这里有一个测试用例: 一旦内容具有在使用jQuery';什么是幻灯片?,jquery,css,slideup,Jquery,Css,Slideup,我这里有一个测试用例: 一旦内容具有.content,则.wrapper会自动收缩包装,这可能是因为.content显示为无编辑。我希望.wrapper的行为就像.content在动画之后仍然存在一样,保持初始大小 .wrapper已被float:lefted以显示问题(通过强制收缩包裹行为),但可能并不总是如此,因此我希望解决方案不涉及在动画之前读取长方体的宽度,并在动画之后重新应用它 有一个简单的修复方法吗?如果指定包装的宽度,如果滑动切换它的子项,它将保持相同的大小 .wrapper{
.content
,则.wrapper
会自动收缩包装,这可能是因为.content
显示为无编辑。我希望.wrapper
的行为就像.content
在动画之后仍然存在一样,保持初始大小
.wrapper
已被float:left
ed以显示问题(通过强制收缩包裹行为),但可能并不总是如此,因此我希望解决方案不涉及在动画之前读取长方体的宽度,并在动画之后重新应用它
有一个简单的修复方法吗?如果指定包装的宽度,如果滑动切换它的子项,它将保持相同的大小
.wrapper{
width: 200px;
}
我不确定是否有更好/更通用的解决方案来解决此问题。您可以使用可见性:隐藏,然后使用可见性:可见
来显示信息
display:none
这就好像数据不在页面上一样,这就是为什么一旦display属性更改为none
visibility:hidden
可见性允许数据仍存储在页面上的相应位置,但只是不可见
尝试一下,看看这是否有助于解决您的问题。或要使其动态化,请尝试以下操作:
var contentWidth = $('.content').width();
$('.header').width(contentWidth);
我个人会这样做:
$('.wrapper').each(function() {
var wrapper = this;
$('.header', wrapper).click(function() {
$(this).css('width',$(this).width());
$('.content', wrapper).slideToggle();
});
});
但也许你甚至可以这样做:
$('.wrapper').each(function() {
var wrapper = this;
$('.header', wrapper).click(function() {
$('.content', wrapper).slideToggle('slow',function(){
$('.content', wrapper).show();
$('.content', wrapper).css('visibility','hidden');
$('.content', wrapper).css('height','0px');
});
});
});
jQuery将显示:none
添加为动画过程的一部分。那是我无法控制的。