Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/135: Рейтинг темы: голосов - 135, средняя оценка - 4.75
16 / 16 / 0
Регистрация: 27.12.2009
Сообщений: 90

Перебор и изменение всех дочерних элементов (JQuery)

16.07.2010, 16:18. Показов 25016. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть конструкция типа
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div id="root">
<div class="div2">
<img />
<span class="comm">Комментариев<b>1</b></span>
<span class="seen">Просмотров<b>2</b></span>
<span class="stat"></span>
</div>
<div class="div2">
<img />
<span class="comm">Комментариев<b>1</b></span>
<span class="seen">Просмотров<b>2</b></span>
<span class="stat"></span>
</div>
<div class="div2">
<img />
<span class="comm">Комментариев<b>1</b></span>
<span class="seen">Просмотров<b>2</b></span>
<span class="stat"></span>
</div>
</div>
Нужно как-то для каждого отдельного div2 (все названия придуманы) получить значения <b> комментов и просмотров, поделить одно на другое и в зависимости от результата добавить картинку в innerHTML span'а. Как бы логичнее это реализовать?

Добавлено через 1 час 27 минут
JavaScript
1
2
3
4
5
6
7
8
var blocks = $(".BlogsScrollElem");
blocks.each(function(i)
{
    var komm = this.$(".BlogsScrolltext b").html;
    var seen = this.$(".BlogsComentCount b").html;
    var stat = komm/seen;
    this.$("BlogsStatImg").append(stat);
});
Написал вот так, нет ли тут нарушений синтаксиса JQuery?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.07.2010, 16:18
Ответы с готовыми решениями:

Перебор всех дочерних контролов программы
Здравствуйте. Есть форма, на форме расположены панели, табконтролы, лейблы и много всего. Хочу сохранить в файл имена всех контролов и...

Перебор первых дочерних элементов
Есть меню. &lt;div id=&quot;top_menu&quot;&gt; &lt;ul&gt; &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Новости&lt;/a&gt; &lt;ul&gt; &lt;li&gt;&lt;a...

Подсветка активной ссылки и всех дочерних элементов
Здравствуйте, есть такой код: &lt;style&gt; #header-bottom{padding-top: 80px!important;} #header-top-city p{padding-left: 14px; ...

5
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
16.07.2010, 16:32
Может, так?
JavaScript
1
2
3
4
$('#root > .div2').each(function(o){
    var k = +$(o).find('.comm b').text() / +$(o).find('.seen b').text();
    $(o).find('.stat').append(k < 1 ? 'foo' : 'bar');
});
1
16 / 16 / 0
Регистрация: 27.12.2009
Сообщений: 90
16.07.2010, 17:00  [ТС]
Благодарю! Jquery только начал разбирать, а тут по работе задание =)
0
16 / 16 / 0
Регистрация: 27.12.2009
Сообщений: 90
19.07.2010, 12:24  [ТС]
Не выходит =( Я что-то недопонимаю в идеологии JQuery видимо.
JavaScript
1
2
3
4
5
6
7
8
$(document).ready(function () {
    var i=0;
    $('.BlogsScrollElem').each(function(o){
        var CommentCount = $(o).find('.BlogsComentCount b').text();
        i++;
        $(o).find('.BlogsActivity').append(i);
    });
});
Такой код ставит во все .BlogsActivity единичку =( То же происходит и с задачкой в первом посте - во всех элементах одинаковые значения =(

Добавлено через 10 минут
Точнее, append выполняется для каждого блока - получается строка-последовательность значений BlogsComentCount, и она же одна(одинаковая для всех) строка присваивается всем спанам. Поправить бы >_<

Добавлено через 2 минуты
Все, разобрался. Вместо $(o) надо было использовать $(this)
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
19.07.2010, 15:02
Переменная CommentCount к чему вообще? О_о
0
16 / 16 / 0
Регистрация: 27.12.2009
Сообщений: 90
19.07.2010, 18:07  [ТС]
Криво вырезал нужный кусок хД
Вот итоговый код если интересно
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$(document).ready(function () {
    $('.BlogsItems').css('display','block');
    $('.BlogsScrollElem').each(function(){
        var CommentCount = +$(this).find('.BlogsComentCount b').text();
        var ViewsCount = +$(this).find('.BlogsViewsCount b').text();
        if (CommentCount==0 || ViewsCount==0){
            $(this).find('.BlogsActivity').append('<img src="./design/blogstate/0.gif" />');
        }
        else{
        var BlogsActivity = CommentCount/ViewsCount;
            if (BlogsActivity >= 0.5){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/5.gif" />');
            }
            if (BlogsActivity >= 0.4 && BlogsActivity<0.5){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/4.gif" />');
            }
            if (BlogsActivity >= 0.3 && BlogsActivity<0.4){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/3.gif" />');
            }
            if (BlogsActivity >= 0.2 && BlogsActivity<0.3){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/2.gif" />');
            }
            if (BlogsActivity >= 0.1 && BlogsActivity<0.2){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/1.gif" />');
            }
            if (BlogsActivity >= 0 && BlogsActivity<0.1){
                $(this).find('.BlogsActivity').append('<img src="./design/blogstate/0.gif" />');
            }
        }
    });
});
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.07.2010, 18:07
Помогаю со студенческими работами здесь

Изменить шрифт на сайте для всех дочерних элементов
Доброго времени суток! Можно ли как-то назначить шрифт (в общем случае, любое свойство) для всех дочерних элементов body, чтобы шрифты,...

Перебор всех нечетных элементов массива х из 99 элементов
Чему будет равно значение переменной s после завершения фрагмента программы: s:=0; i:=1; while (i&lt;100) do begin ...

Перебор всех checkbox элементов
Есть 65 checkbox'ов(не спрашивайте), нужно перебрать каждый и установить определенные значения. Пробовал через Controls.OfType, которое...

Перебор всех сочетаний из n элементов по k
Здравствуйте! Задача следующая: есть массив точек, количество точек равно n (n будет меняться), а вот k всегда равно 3, то есть эти точки...

Перебор всех элементов EnumChildWnd
Всем привет. Вот столкнулся с такой проблемой: Вот пробую перебрать все элементы какого либо стороннего окна function EnumChildWnd(h:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru