Цикл не отрабатывает до конца
Добрый день. Такая проблема. Есть таблица (ооочень большая) в которой я выводу первые 10 строк, а дальше ставлю класс
.hide_tab_pos{ display:none; } для всех элементов <td> таблицы (Поставить для tr не могу ввиду особенности структуры таблицы). По нажатию на ссылку происходит событие oneclik и функция меняет для всех элементов с классом hide_tab_pos, значение display на inline. <script type="text/javascript"> function show_tabs() { var elements = document.getElementsByClassName('hide_tab_pos'); for (i = 0; i < elements.length; i++) { elements[i].className = "inline"; } } ..... <a href="#" onclick="show_tabs(); return false " class="link-full-analog" >показать больше позиций</a> Но есть такая проблема. Цикл который переберает все элементы и присваивает значения почему то не отрабатывает до конца и часть элементов остается скрытой. кто подскажет почему не отрабатывает цикл до конца? Заранее спасибо всем кто решит помочь! |
Кто знает почему может быть?
|
Цитата:
display: table-cell |
diakon,
а если так? for (var i = elements.length-1; i >= 0; i--) |
Цитата:
|
diakon,
суть в том, что методы вроде getElementsByClassName возвращают не массив, а "коллекцию DOM-элементов", которая следит за документом и самостоятельно меняется, чтобы всегда быть актуальной. В твоем случае из нее выпадали элементы, у которых ты менял класс (т.к. они более не соответствовали правилам, по которым собрана коллекция). |
Часовой пояс GMT +3, время: 05:37. |