Здравствуйте!
У меня есть скрытые блоки с классом .hide то есть (display:none;). Нужно чтобы при нажатии на checkbox этот класс исчезал и все блоки становились видимыми.
Нашел сам скрипт, но он работает только с первым блоком, а в остальных уже не действует. Как собственно и функция toggle(). Она тоже почему-то взаимодействует только с первым попавшимся блоком, а скрытых блоков несколько.
Как сделать так, чтобы если checkbox is checked то класс .hide убирается, если не checked, то возвращается как было.
<script type=text/javascript>
function showab(){
if (document.getElementById('showall').checked){
//функция которая убирает класс .hide для всех блоков с id="modblock"
}}
</script>
Вот этот скрипт:
http://jsfiddle.net/RkQCF/45/
думаю нужно усовершенствовать это
http://api.jquery.com/toggle/
Примечание:
Спасибо за подсказки, я решил эту проблему так:
<style>.hide {display:none;}</style>
<script type=text/javascript>
function showall() {
if ($('#sab').attr('checked')) {
$('.hide').show();
}
else {
$('.hide').hide();
}
}
</script>
<input type="checkbox" id="sab" onClick="showall()" /> <label class="t" for="sab">{l s='Show all blocks'}</label>
<div class="block hide">Скрытый текст 1</div>
<div class="block hide">Скрытый текст 2</div>
<div class="block">Видимый</div>
Если чекбокс включён, то класс hide становится display:block, а если чекбокс не отмечен, значит этот класс становится display:none. Как-то так...
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.