迭代两个循环,悬停一个按钮,更改相应的元素



我有两个循环,一个带有一组按钮,另一个带有一组跨度。当我将鼠标悬停在其中一个按钮上时,我希望相应的范围改变颜色。他们俩都有一个从 0 开始的计数,这应该将这两个项目联系在一起。

这是我的尝试,我哪里做错了?它似乎什么也没做。

$('.toggle').each(function () {
var item = $(this).data();
$('.feature-dot[data-number="'+ item +'"]').css('background-colour', 'green');
}, function () {
$('.feature-dot[data-number="'+ item +'"]').css('background-colour', 'yellow');
});

按钮循环:

<li>
<a class="toggle dot-link-<?php echo $count; ?>" data-number="<?php echo $count; ?>" href="javascript:void(0);"><?php the_sub_field('title'); ?> <span class="opener">+</span><span class="closer">-</span></a>
<span class="inner">
<?php the_sub_field('content'); ?>
</span>
</li>

点循环(对应项目(:

<span class="feature-dot dot-<?php echo $counter; ?>" data-number="<?php echo $counter; ?>" style="top:<?php echo $top; ?>px;left:<?php echo $left; ?>px;"></span>

您没有将密钥传递给.data()方法,请像这样使用它

var item = $(this).data('number');

并且必须使用.hover()函数而不是.each()来附加事件处理程序。

$('.toggle').hover(function () {
var item = $(this).data('number');
$('.feature-dot[data-number="' + item + '"]').css('background-color', 'green');
}, function () {
var item = $(this).data('number');
$('.feature-dot[data-number="' + item + '"]').css('background-color', 'yellow');
});

相关内容

  • 没有找到相关文章

最新更新