我的大脑刚刚停留在凌晨4点40分,我不知道该怎么做。 要么我脑子里没有解决方案,要么我应该睡觉。
但是我不知道如何仅为当前选定/悬停的课程制作动画,而不是所有课程。
这是HTML部分:
<div class="cardWrap">
<div class="backlit"></div>
<div class="cardStyle">
<div class="cardOverlay"></div>
<ul class="cardAmount">
<li>Role Gift</li>
<li>Download and Play <br> Your Favourite Games</li>
<li>$10</li>
<li> </li>
</ul>
</div>
<a class="cardSelect">Get this amount</a>
</div>
这是jQuery部分:
<script>
$(function() {
$('.cardWrap').on('mouseenter mouseleave', function(e) {
if(e.type === 'mouseenter') {
$('.backlit').stop().animate({'opacity': '.9'})
} else {
$('.backlit').stop().animate({'opacity': '.4'})
}
});
});
</script>
它工作得很好......它会减少并增加父母悬停时的不透明度。但是,如果我有例如3x相同的html结构并且目前只有一个html结构,为什么它会动画所有这些?
答案 0 :(得分:2)
将脚本更改为此。您需要将范围限制为悬停元素的孩子。
$(function () {
$('.cardWrap').on('mouseenter mouseleave', function (e) {
if (e.type === 'mouseenter') {
$(this).children('.backlit').stop().animate({
'opacity': '.9'
})
} else {
$(this).children('.backlit').stop().animate({
'opacity': '.4'
})
}
});
});
答案 1 :(得分:1)