Чтобы исправить это, вам нужно использовать обход DOM, чтобы найти родителя .search-block
элемента, который был найден.Для этого в jQuery вы можете использовать closest()
.
Также обратите внимание, что вы можете сделать код более лаконичным, предоставив единственную функцию-обработчик для hover()
, которая запускается как при событиях mouseenter
, так и mouseleave
и вызывает toggleClass()
в обоих случаях.Попробуйте это:
$('.btn').hover(function() {
$(this).closest('.search-block').toggleClass('search-boxshadow');
});
.search-boxshadow {
background-color: red;
transition: 0.5s;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row-eq-height search-block pers-load">
<div class="col-lg-12 add flush col-sm-12 col-xs-12">
<div class="tablerow">
<div class="tablecell">
<div class="col-lg-12 col-sm-12 col-xs-12">
<blockquote>COnatct</blockquote>
<span>05/07/2018</span>
<a class="btn hidden-xs" href="#">PRIMARY</a>
</div>
</div>
</div>
</div>
</div>
<div class="row-eq-height search-block pers-load">
<div class="col-lg-12 add flush col-sm-12 col-xs-12">
<div class="tablerow">
<div class="tablecell">
<div class="col-lg-12 col-sm-12 col-xs-12">
<blockquote>COnatct</blockquote>
<span>05/07/2018</span>
<a class="btn hidden-xs" href="#">PRIMARY</a>
</div>
</div>
</div>
</div>
</div>