Эй, ребята, проблема в следующем: на веб-сайте, над которым я сейчас работаю, есть множество ящиков, в каждом из которых есть небольшая область в углу, которая должна подсчитывать пользователей, когда веб-сайт запускается. Таким образом, просто для теста я использовал идентификатор с идентификатором в разметке для размещения числа:
<span id="usercount">612</span>
Со следующими строками простого jQuery:
var users = $('#usercount').text().length;
if (users >= 4) {
$('#usercount').css('font-size','12px');
$('#usercount').css('margin-left','7px');
}
Как видите, если число состоит из 4 или более символов, оно становится меньше и правильно выравнивается внутри этой области. Но поскольку на сайте должно быть много ящиков, я изменил id = "usercount" на class = "usercount", и он больше не работает. Я понимаю, что должен быть какой-то цикл для получения одного и того же фрагмента данных из каждого элемента с классом «usercount», но я не могу понять, как это грамотно записать с правильным синтаксисом. Я понимаю, что это простая операция, но я новичок в JS и буду признателен за вашу помощь. Большое спасибо!
1 ответ
Вы можете использовать метод filter
:
$('.usercount').filter(function() {
return $(this).text().length >= 4;
}).css({
'font-size': '12px',
'margin-left': '7px'
});
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Имейте в виду, что JavaScript — это НЕ то же самое, что Java! Включите все ярлыки, относящиеся к вашему вопросу; например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [svelte] и т. д.
usercount
или длину текста?