jQuery siblings 方法和设置高度
jQuery siblings method and set height
我有DOM这样的结构
<div>
<div class="logo"></div>
<div class="description"></div>
<div class="learnMore"><a class="learn-more" href="#path">Learn More</a>
</div>
<div>
<div class="logo"></div>
<div class="description"></div>
<div class="learnMore"><a class="learn-more" href="#path">Learn More</a>
</div>
单击 a 标签时,我试图在同一父级 div
中更改具有 class 描述的 div 的高度
$('.learn-more').click(function() {
$(this).siblings('.description').animate({height: '90px'}, 200);
}
这一直在失败。
$('.description').animate({height: '90px'}, 200);
这行得通,但它会更改所有具有该 class 名称的 div 的高度,而不仅仅是它的同级。
有什么建议吗?
在您的第一个解决方案中,您是否打算使用 .learn-more
而不是 .show-more
?
在这种情况下,请注意描述 div 不是 link a 标签的兄弟;它是 parent 的兄弟姐妹。添加 .parent()
调用应该可以解决此问题。即
$('.show-more').click(function() {
$(this).parent().siblings('.description').animate({height: '90px'}, 200);
}
我有DOM这样的结构
<div>
<div class="logo"></div>
<div class="description"></div>
<div class="learnMore"><a class="learn-more" href="#path">Learn More</a>
</div>
<div>
<div class="logo"></div>
<div class="description"></div>
<div class="learnMore"><a class="learn-more" href="#path">Learn More</a>
</div>
单击 a 标签时,我试图在同一父级 div
中更改具有 class 描述的 div 的高度$('.learn-more').click(function() {
$(this).siblings('.description').animate({height: '90px'}, 200);
}
这一直在失败。
$('.description').animate({height: '90px'}, 200);
这行得通,但它会更改所有具有该 class 名称的 div 的高度,而不仅仅是它的同级。
有什么建议吗?
在您的第一个解决方案中,您是否打算使用 .learn-more
而不是 .show-more
?
在这种情况下,请注意描述 div 不是 link a 标签的兄弟;它是 parent 的兄弟姐妹。添加 .parent()
调用应该可以解决此问题。即
$('.show-more').click(function() {
$(this).parent().siblings('.description').animate({height: '90px'}, 200);
}