Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Реализация цикла (https://javascript.ru/forum/dom-window/59774-realizaciya-cikla.html)

KaiLee 25.11.2015 23:50

Реализация цикла
 
Есть некий исходный код, к которому нет доступа.
Это блок, содержащий в себе другие блоки с типовым содержанием (структура у всех одинаковая).
<div class="MAIN">

<div class="CLASS">
<span title="TEXT">TEXT</span>
<div><div style="TEXT"></div></div>
</div>

...

<div class="CLASS">
<span title="TEXT">TEXT</span>
<div><div>BLOCK</div></div>
</div>

</div>
В атрибуте title каждого span'а есть необходимая информация, которую надо добыть, после чего добавить css-свойство div'у второго уровня вложенности.

Все бы ничего, но элементов таких много и нужен цикл...
И вот тут все, никак...

Код выглядит так:
var p = 1;
while(p<10){
var x = $('.CLASS:nth-child(p) span').attr('title');
for(i=0; i<1; i++){ 
s1 = x.lastIndexOf(')');
x = x.substring(0,s1);
}
for(i=0; i<1; i++){ 
s2 = x.indexOf('(')+1;
x = x.substring(s2);
}
$('.CLASS:nth-child(p) div div').css('width', x);
document.write(p);
p = p+1;
};
Если в конструкции .CLASS:nth-child(p) вместо переменной ручками указать порядковый номер - то все работает, делаю вывод, что проблема в конструкции цикла...

Что я делаю не так? И как реализовать работающий цикл?

рони 25.11.2015 23:58

KaiLee,
в целом ваш код бред
$('.CLASS:nth-child('+p+') span').

KaiLee 26.11.2015 00:18

Цитата:

Сообщение от Rise
Нет же доступа как с ним js работает тогда или про какой ты доступ пишешь и зачем тогда нам эта информация? Или для тебя доступ это ручками код править)

Да, для меня к коду есть доступ тогда, когда я могу его отредактировать без скриптов.

Цитата:

Сообщение от рони
$('.CLASS:nth-child('+p+') span').

Да, помогло... А ларчик-то просто открывался.. Только вот нигде я такую конструкцию не встречала...

Цитата:

Сообщение от рони
в целом ваш код бред

А в чем выражается его бредовость? Можно сделать проще?


Часовой пояс GMT +3, время: 02:36.