gpt4 book ai didi

javascript - 同位素中的动画项目大小 : Why is first item wonky?

转载 作者:数据小太阳 更新时间:2023-10-29 04:34:07 27 4
gpt4 key购买 nike

我正在学习使用 Isotope并看到了作者关于如何 animate item sizes 的博客文章.

我已经为我正在开发的项目实现了它。它由三个垂直列组成。每个项目为 196 像素 x 70 像素。当您单击某个项目时,它会扩展到 402 像素 x 230 像素。

所有项目都正确调整大小并导致 Isotope 刷新布局 - 除了第一个项目。

单击第一个项目会导致所有后续列表项目仅在一个垂直列中排列 - 即使有足够的空间并且项目应该围绕第一个项目排列。

单击列表中的任何其他项目都会导致正确的行为。只有第一个是靠不住的。谁能看出是什么原因造成的?

这是我的测试用例:http://joshrenaud.com/pd/testcase/testcase.html

处理此调整大小的代码如下所示:

    $('.child').click(function(){
var $this = $(this);
if ($this.hasClass('big')) {
tileStyle = { width: 196, height: 70};
}
else {
tileStyle = { width: 402, height: 230};
}
$this.children().children('.childDate').toggle();
$this.children().children('.childDesc').toggle();
$this.toggleClass('big');

$this.find('.child-content').stop().animate( tileStyle );

$('#container').isotope( 'reLayout' )

});

最佳答案

经过更多的试验,我找到了答案。 Isotope 有一个名为 columnWidth 的属性,文档表明该属性是可选的,因为脚本可以确定第一项的列宽。

然而,将 columnWidth 添加到我的 .isotope() 初始值设定项中使它正常工作。

$('#container').isotope({
masonry: { columnWidth : 206 }
});

此外,columnWidth 似乎与项目的宽度相同。它是项目的宽度,加上装订线(边距)。就我而言,columnWidth 为 206:196(项目宽度)+ 10(装订线/边距)。

关于javascript - 同位素中的动画项目大小 : Why is first item wonky?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6146977/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com