Если в контейнере нечетное количество блоков, добавить последнему class
Есть родительский блок .main_ul (он является ul'ом), в нем находятся li. Нужно чтобы если количество li нечетное, то последнему добавлялся класс .mainlast_li.
Помогите пожалуйста новичку |
subbziro,
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.mainlast_li {
background-color: #1b6d85;
}
</style>
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
</head>
<body>
<ul class="main_ul ">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
<script>
if(!$('.main_ul li').length % 2 == 0){
$('.main_ul li:last-child').addClass('mainlast_li');
}
</script>
</body>
</html>
|
|
Цитата:
|
yazonnile,
стилями не знаю как ) надо смотреть ) |
laimas,
а можешь пояснить ) $('.main_ul li').length & 1 допустим $('.main_ul li').length = 5; тогда 5&1 или 4&1 , а что дальше? :) Как тут с четными и нечётными?) |
$('.main_ul > li:nth-of-type(2n+1):last-child').addClass('mainlast_li');
Но лучше прям в CSS селектором прописать нужный стиль, тогда никакой класс добавлять не нужно будет. |
Цитата:
Это как с делением/умножением, если условия позволяют, то выгоднее не делить число а сдвинуть его на N разрядов вправо, а при умножении влево. |
laimas,
спасибо ,за объяснение , но я всё равно не понял :-? А ссылку можно получить? :) |
А чего тут не понятного:
0 = 0000 1 = 0001 2 = 0010 3 = 0011 4 = 0100 5 = 0101 .... Рассказывать, что будет при логической операции AND чисел и 1, или не надо? Ссылку на что? |
| Часовой пояс GMT +3, время: 03:31. |