Ballly
@Ballly

Выводит только первый элемент массива. Почему?

Всем здравствуйте! Сразу оговорюсь, код ниже писал не я, поэтому всех подробностей не знаю. В кратце, данный код запускали через консоль в браузере, суть кода в том, что зеленным цветом подсвечивается строка td если выполняется условие. Функция f_td отрабатывает нормально и показывает через console.log количество td, а вот когда запускаю код в консоли, цикл идет бесконечный и выводит всегда первый по счету массив, по какой-то причине цикл не отрабатывает корректно.
si = setInterval(function(){
    try{
		f = window.frames[0];
		f_id = f.document.getElementById('DataGrid2') || f.document.getElementById('answers');
		f_td = f_id.getElementsByTagName('td');
		for(i = 0; i < f_td.length; i++){
			f_td_e = f_td[i].getAttribute('ondblclick');
			if(f_td_e) {
				f_td_s = f_td_e.slice(11, -1);
				res = f_td_s.split(',');
				res[2] = res[2].slice(1, -1);
				res[5] = res[5].slice(1, -1);
				if(f.hex_md5(res[2]) == res[5]) {
					f_td[i].style.color = 'green';
				}
			}
		}
    } catch(e) {}
}, 3000);

function c9 (){
	clearInterval(si);
}
  • Вопрос задан
  • 150 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы