Поочередное скрытие div
Имеются блоки (window), у всех display:none
<div class="window1"></div> <div class="window2"></div> <div class="window3"></div> <div class="window4"></div> <div class="window5"></div> <div class="window6"></div> <div class="window7"></div> <div class="window8"></div> И есть checkbox 9 штук: <input type="checkbox" id="checkb" /> <label for="checkb">Чекбокс</label> <input type="checkbox" id="che1" /> <label for="che1">Еще</label> Как сделать так, что бы при выборе checbox, например 3 штук к классам window1 window2 и window3 присвоился disblay:bclok? Соотвественно и обратно, убрали галочки, остался один активированный checkbox, следовательно только у window1 disblay:bclok |
ДОшло только до
var checboxz=$("input[type='checkbox']"); checboxz.change(function(){ var window=''; checboxz.each(function(){if($(this).is(':checked')){window+=[S]zzz[/S];}}); }); |
Смог выполнить подсчет количества выбранных чекбоксов
var countChecked = function() { var n = $( 'input:checked' ).length; $( '#macs .window').text( n + ' выбрано!' ); }; countChecked(); $( 'input[type=checkbox]' ).on( 'click', countChecked ); Но ни как не пойму, как мне количество выбранных чекбоксов n, дописать к классу window. Что бы получилось window1 - при выборе 1 чекбокса. При выборе 3х чекбоксов window3 |
k_DizeL,
можно ли как то однозначно сделать описание ? |
рони,
<style>.window1, .window2, .window3, .window4,. window5, .window6, .window7, .window8 {disblay:none}</style> <div class="window1"></div> <div class="window2"></div> <div class="window3"></div> <div class="window4"></div> <div class="window5"></div> <div class="window6"></div> <div class="window7"></div> <div class="window8"></div> <input type="checkbox" id="checkb" /> <label for="checkb">Чекбокс</label> <input type="checkbox" id="che1" /> <label for="che1">Еще</label> <input type="checkbox" id="fg" /> <label for="fg">Чекбокс</label> <input type="checkbox" id="hh" /> <label for="hh">Еще</label> <input type="checkbox" id="checkb" /> <label for="checkb">Чекбокс</label> <input type="checkbox" id="che1sd" /> <label for="che1sd">Еще</label> <input type="checkbox" id="asd" /> <label for="asd">Чекбокс</label> <input type="checkbox" id="xzxc" /> <label for="xzxc">Еще</label> При установленных (включенных) влажках на 3 чекбоксах: .window1, .window2, .window3 {display:block} Если ставим на 2 чекбоксах галочки, то: .window1, .window2{display:block} .window3 {display:none} /* и остальные window4 5 6 7 8 */ Каждый включенный флажек (не важно какой по порядку), ставит для window display:block, так же и убирает. |
k_DizeL,
:-? <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> div.win { display: none; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function(){ var $divs = $("div.win"), $inps = $("input.win"); $inps.click(function() { var len = $inps.filter(":checked").length $divs.hide().slice(0,len).show() }); }); </script> </head> <body> <div class="win">window1</div> <div class="win">window2</div> <div class="win">window3</div> <div class="win">window4</div> <div class="win">window5</div> <div class="win">window6</div> <div class="win">window7</div> <div class="win">window8</div> <input type="checkbox" id="checkb" class="win"/> <label for="checkb">Чекбокс</label> <input type="checkbox" id="che1" class="win"/> <label for="che1">Еще</label> <input type="checkbox" id="fg" class="win"/> <label for="fg">Чекбокс</label> <input type="checkbox" id="hh" class="win"/> <label for="hh">Еще</label> <input type="checkbox" id="checkb" class="win"/> <label for="checkb">Чекбокс</label> <input type="checkbox" id="che1sd" class="win"/> <label for="che1sd">Еще</label> <input type="checkbox" id="asd" class="win"/> <label for="asd">Чекбокс</label> <input type="checkbox" id="xzxc" class="win"/> <label for="xzxc">Еще</label> </body> </html> |
Именно так, вот только class="win" не такой. А обязательно class="window1"
и так далее. Это важно |
Цитата:
var $divs = $('[class^="window"]'), |
Просматривал, но подходящего ничего не находил, потому что логика выполнения скрипта у меня была совсем другая.
Читал про селекторы тут http://jquery.page2page.ru/index.php5/Селекторы |
k_DizeL,
Селектор по началу атрибута |
Часовой пояс GMT +3, время: 02:22. |