У меня есть следующий код на моей странице галереи, чтобы показать галереи, которые у меня есть.
<div id="gallery">
<?php
if (!empty($gallery)) {
foreach ($gallery as $row) {
?>
<div class="album_holders">
<div class="image_holder">
<img src="images/gallery/<?php echo $row['img_name']; ?>" width="150" height="75"/>
</div>
<div class="title_holder">
<?php echo $row['title']; ?>
</div>
</div>
</div>
<?php
}
}
?>
</div>
поэтому мне нужно добавить мышь к анимации всем владельцам альбомов. когда мышь придет над альбомом, мне нужно показать название альбома под ним, используя функцию jquery.
это мой код jquery
$(".image_holder").on("mouseover", function ()
{
$(".title_holder").animate({
"opacity": 1
},1500,$easing2);
});
но проблема в том, что когда я перемещаю мышь над одним альбомом, каждый альбом показывает его имя. как это остановить. Я ищу в сети и обнаружил, что должен использовать функцию.on. либо я все еще использую его, показывая его имя.
Вы можете получить относительные .album_holders
используя this
, а затем найти в нем .title_holder
.
$(".image_holder").on("mouseover", function ()
{
$(this).closest('.album_holders').find('.title_holder').animate({
"opacity": 1
},1500,$easing2);
});
вы можете сделать это
$(".image_holder").on("mouseover", function ()
{
$(this).next(".title_holder").animate({
"opacity": 1
},1500,$easing2);
});
.next()
который зависит от порядка. Вы можете утверждать, что это может пережить больше изменений HTML, например, изменения шаблона, прежде чем JavaScript нуждается в переработке.