При нажатии на radio изменить прозрачность div
Добрый день! Господа, подскажите, пожалуйста с решением вот какой проблемы:
В автоматически генерируемой форме есть несколько инпутов (радио) и над ними div-ы с картинками. По умолчанию в цсс у дивов с картинками задан opacity:0.5 , при нажатии на инпут, картинка над ним должна становиться непрозрачной, т.е. opacity:1 Это я сделал, присвоив не картинке, а самому диву прозрачность. ------------ Вопрос! Как сделать, чтобы при нажатии на другую радио кнопку, например, из группы "Цвет", первый выбранный див (с картинкой) обратно становился прозрачным, как и был. При этом есть ведь несколько дивов, внутри которых группы радио кнопок ( <div class="1">, <div class="2">.... ) - цвет, размер и т.п. Как быть? Заранее спасибо за помощь! Нет id, на checked ориентироваться тоже нельзя..(
$('input').click(function(){
$(this).prev().animate({opacity:'1.0'});
return false;
});
<style>
div.images { opacity:0.5; }
</style>
<form method="POST" action="" class="wpcc_form wpcc_form_2">
<div class="1">
цвет
<label>
<div class="images"><img src="img-1.jpg"></div>
<input type="radio" name="m">
</label>
<label>
<div class="images"><img src="img-2.jpg"></div>
<input type="radio" name="m">
</label>
</div>
<div class="2">
форма
<label>
<div class="images"><img src="1a-img.jpg"></div>
<input type="radio" name="p">
</label>
<label>
<div class="images"><img src="2a-img.jpg"></div>
<input type="radio" name="p">
</label>
<label>
<div class="images"><img src="3a-img.jpg"></div>
<input type="radio" name="p">
</label>
</div>
</div>
|
Globus,
а так ?
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<style>
div.images { opacity:0.5; }
:checked + div.images { opacity:1; }
</style>
<form method="POST" action="" class="wpcc_form wpcc_form_2">
<div class="1">
цвет
<label><input type="radio" name="m" checked="checked">
<div class="images"><img src="img-1.jpg"></div>
</label>
<label> <input type="radio" name="m">
<div class="images"><img src="img-2.jpg"></div>
</label>
</div>
<div class="2">
форма
<label> <input type="radio" name="p">
<div class="images"><img src="1a-img.jpg"></div>
</label>
<label><input type="radio" name="p">
<div class="images"><img src="2a-img.jpg"></div>
</label>
<label><input type="radio" name="p">
<div class="images"><img src="3a-img.jpg"></div>
</label>
</div>
</form>
</body>
</html>
|
было бы здорово, но форма генерируется автоматически и её переписывать нельзя. Может есть ещё какая-то возможность использовать псевдоклассы в исходном варианте кода формы?
|
Ваш вариант работает даже при исходном положении кода, но только, если убрать лейблы
Т.е. не ... <div class="1"> <label><input type="radio" name="m" checked="checked"> <div class="images"><img src="img-1.jpg"></div> </label> .... а просто ... <div class="1"> <input type="radio" name="m" checked="checked"> <div class="images"><img src="img-1.jpg"></div> .... Никак не пойму, чем мешают теги label ??? |
переписал генерирующийся штмл и всё заработало, как у вас, спасибо!
|
| Часовой пояс GMT +3, время: 23:06. |