| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > как получить элементы по классу? |
| Автор: Fubu_By 19.2.2010, 17:21 |
| как можно получить элементы с определённым классом? |
| Автор: bars80080 19.2.2010, 17:25 |
| с какой целью, прежде всего надо спросить в крайнем случае перебрать все элементы и проверить класс. для всего DOM это делать конечно не надо, но вопрос обычно касается определённых элементов в какой-то группе. допустим некоторые <p> в пределах одного <div> |
| Автор: Fubu_By 19.2.2010, 18:19 |
| да да да. есть div а в нём другие дивы с классом "div-1" и вот мне надо получить их чтобы изменить свойства |
| Автор: bars80080 19.2.2010, 20:44 | ||
наверно, на jquery это делается в два движения. но по сути тоже самое |
| Автор: IDVsbruck 20.2.2010, 04:15 | ||
| Маленькая поправка: допустим, есть несколько элементов, у одного атрибут class="div-1", а у другого - class="div-1 red". Исходя из логики, мы должны найти оба элемента и заменить нужные параметры. Однако проверка
выберет только первый элемент. Поэтому выбирать надо не сравнением, а проверкой регулярки. |
| Автор: iluvatar 23.2.2010, 12:23 |
| используя jquery получим массив $('.div-1') |
| Автор: IDVsbruck 23.2.2010, 23:32 |
| 100% и удобнее, но вопрос не в той подтеме |
| Автор: Любитель 23.2.2010, 23:59 |
| Ну так, к слову - везде кроме ИЕ есть getElementsByClassName. В ИЕ8 есть querySelectorAll. Само собой это будет (при достаточно большом количестве элементов) работать быстрее. В случае ие7 и < - да, только полный перебор, по возможности с ограничением по тегу. Но на самом деле, я всё-таки не понимаю - почему бы не использовать готовый движок селекторов? Если предполагается достаточно много манипуляций с ДОМ-ом, то это оч сильно поможет, да и работать будет быстрее, а кода меньше. |