Проверка атрибутов
Имеется список div блоков у которых задан атрибут data-page (числовое значение). Требуется при загрузке страницы проверить эти блоки на соответствие условию (в примере, что значение больше либо равно 1 и меньше либо равно 20). Через id написал код, который работает. А для классов не получается. Буду рад помощи.
<div class="item" data-page="10" id="qwe"></div> <div class="item" data-page="10"></div> <div class="item" data-page="25"></div> Рабочий JS для 1 блока:
var cmd = $('#qwe').attr('data-page');
if (cmd >= 1 && cmd <= 20)
{
$('#qwe').css('display','block');
} else {
$('#qwe').css('display','none');
};
Не рабочий JS для списка:
if ($('.item').attr('data-page') >= 1 && $('.item').attr('data-page') <= 20)
{
$(this).css('display','block');
} else {
$(this).css('display','none');
};
|
|
рони,
Спасибо за подсказку:) Может кому-то понадобится, вот решение.
$( ".item" ).each(function( ) {
if ( $(this).attr('data-page') >= 1 && $(this).attr('data-page') <= 20) {
$(this).css('display','block');
} else {
$(this).css('display','none');
}
});
|
sergey24,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
$( ".item" ).each(function() {
var el = $(this), page = el.data("page");
el.toggle(page >=1 && page <= 20)
});
});
</script>
</head>
<body>
<div class="item" data-page="10">10</div>
<div class="item" data-page="10">10</div>
<div class="item" data-page="25">25</div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 07:42. |