Это решение может помочь. Это пользовательская функция getElementsByClassName
, реализованная на чистом javascript, которая работает в IE.
По сути, этот сценарий проверяет один за другим все возможные варианты и выбирает лучший из доступных. Вот эти варианты:
- Родная функция
document.getElementsByClassName
.
document.evaluate
, которая позволяет оценивать запросы XPath.
- Обход дерева DOM.
Конечно, первый является лучшим с точки зрения производительности, однако последний должен быть доступен везде, включая IE 6.
Пример использования, который также доступен на странице, выглядит так:
getElementsByClassName("col", "div", document.getElementById("container"));
Таким образом, функция допускает 3 параметра: класс (обязательный), имя тега (необязательный, ищет все теги, если не указан), корневой элемент (необязательный, документ, если не указан).
Обновление. Решение, указанное в сообщении блога, размещено в Google Code, который закрывается в январе 2016 года. Однако автор сделал его доступным на GitHub. Престижность flodin, указывающему на это в комментариях.
person
Andrei
schedule
05.07.2011
jQuery
может быть просто использование механизма выбора Sizzle. Но если все, что вам нужно, это выбрать по классу, то я бы просто написал замену. - person user113716   schedule 05.07.2011