Есть несколько таких блоков кода, как при нажатии на кнопку отправить присвоить классу mainli ещё один класс active?
<li class="mainli">
<div class="product-h">
<img width="300" height="300" src="img.jpg" />
<div class="product-meta">
<h2 class="woocommerce-loop-product__title">Text</h2>
<div class="case">
<h6>Title6</h6>
<ul class="vkus">
<li class="qwe">...</li>
</ul>
<div class="line">...</div>
</div>
<div class="case">
<h6>...</h6>
<p><span class="ryer">...</span></p>
<div class="line"></div>
</div>
<div class="case">
<h6>...</h6>
<div сlass="smes">
</div>
<ul class="sostav">
<li сlass="case">
<div class="aqwe"><i class="fa fa-circle" aria-hidden="true"></i> txt</div>
<div class="aqwe"></div>
</li>
<li сlass="case-robusta">
<div class="robusta-n robusta-r_70"><i class="fa fa-circle" aria-hidden="true"></i> txt</div>
<div class="robusta-t">txt</div>
</li>
</ul>
<div class="line"></div>
</div>
<span class="price"><span class="woocommerce-Price-amount amount">390 <span class="woocommerce-Price-currencySymbol"></span></span>
</span>
</div>
</a><a class="button product_type_external buys" data-toggle="modal" data-target="#myModal" style="color: white;">Отправить</a></div>
</li>
Мой код присваивает всем mainli класс актив можно как-то это исправить?
<script type="text/javascript">
$(document).ready(function() {
$(".buys").click(function() {
$(".mainli").removeClass("active");
$(".mainli").addClass("active");
return false;
});
});
</script>
в зависимости текущего элемента $(this)
и на его ближайшего подходящего родителя .closest(".mainli")
$(document).ready(function() {
$(".buys").click(function() {
$(".mainli").removeClass("active");
$(this).closest(".mainli").addClass("active"); // По правке Igor
return false;
});
});
body {
background: gray;
}
a {
cursor: pointer;
}
.mainli.active {
background: #f00;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<li class="mainli">
<div class="product-h">
<img width="300" height="300" src="img.jpg" />
<div class="product-meta">
<h2 class="woocommerce-loop-product__title">Text</h2>
<div class="case">
<h6>Title6</h6>
<ul class="vkus">
<li class="qwe">...</li>
</ul>
<div class="line">...</div>
</div>
<div class="case">
<h6>...</h6>
<p><span class="ryer">...</span></p>
<div class="line"></div>
</div>
<div class="case">
<h6>...</h6>
<div сlass="smes">
</div>
<ul class="sostav">
<li сlass="case">
<div class="aqwe"><i class="fa fa-circle" aria-hidden="true"></i> txt</div>
<div class="aqwe"></div>
</li>
<li сlass="case-robusta">
<div class="robusta-n robusta-r_70"><i class="fa fa-circle" aria-hidden="true"></i> txt</div>
<div class="robusta-t">txt</div>
</li>
</ul>
<div class="line"></div>
</div>
<span class="price"><span class="woocommerce-Price-amount amount">390 <span class="woocommerce-Price-currencySymbol"></span></span>
</span>
</div>
</a><a class="button product_type_external buys" data-toggle="modal" data-target="#myModal" style="color: white;">Отправить</a></div>
</li>
<script type="text/javascript">
$(document).ready(function() {
$(".buys").click(function(e) {
e.preventDefault();
// убираем класс active
$(".mainli.active").removeClass("active");
// добавляем класс active для блока внутри которого находится нажимаемый buys
$(this).closest(".mainli").addClass("active");
});
});
</script>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Хотите улучшить этот вопрос? Update the question so it's on-topic for Stack Overflow на русском
Хочу сделать подобие строительного калькулятора где будут вписаны данныеДо конца не могу понять 1 вещь
Я пытаюсь создать переменную (объект), затем отредактировать ее после загрузки DOMВ данном случае в переменной pageQuery находятся селекторы, которые...