Замена CSS класса каждого четвертого div
Привет господа ДжаваСкрипетеры)))
столкнулся со следующей проблемой. В верстке есть порядка 30 одинаковых дивов с классом .photo-box нужно каждому четвертому диву присвоить класс .photo-box-last (типа четвертый в строке). Делаю следующее: $(document).ready(function(){ for ( $i=1; $i <= 24; $i++ ) { $(".photo-box").hover( function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); }); if ($i %4 == 0) $(".photo-box").ready( function () { $(".photo-box").toggleClass("photo-box-last"); }); $(".photo-box-last").hover(function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); }); ;} }); изучаю jquery только 1 день))) так что сильно не бейте))) |
На сколько я понимаю алгоритм работы jQuery, хотя в нем не работаю, $(".photo-box") выберает все элементы с таким классом...
Если я правильно понял, то попробуй так: $(".photo-box") .hover( function () { $(this).addClass("hover"); }, function () { $(this).removeClass("hover"); }) .filter(function(i){if (!(i%4)) $(this).removeClass("photo-box").addClass("photo-box-last")}) кстати не понял есть или нет функция типа replaceClass или switchClass, что бы не было remove & add |
работает!! только начинает выбирать с первого дива, а надо чтобы начинал с четвертого))) можно как -нибудь задать начальное значение для i ?))
|
угу и будет вот так тебе надо
.filter(function(i){if (!((i+1)%4)) $(this).removeClass("photo-box").addClass("photo-box-last")}) |
УРААААА!!! огромнейшее спасибо! все работает)
|
Часовой пояс GMT +3, время: 10:06. |