Поддержка Internet Explorer для селектора nth-child - PullRequest
2 голосов
/ 20 декабря 2010

Я использую IE9.js из этого проекта: http://code.google.com/p/ie7-js/

По большей части это работает хорошо, обеспечивая поддержку CSS, например, прозрачности в Internet Explorer 7. Однако он не поддерживает селектор: nth-child (). Есть ли способ обойти это чисто с помощью JavaScript? Я имею в виду, что мой CSS будет прочитан javascript, а атрибуты css применены к соответствующим элементам. Мне известно, что эту проблему можно решить с помощью классов на элементах или с помощью jQuery (или других структур) для выбора элементов. Однако это не идеально.

В идеале я хочу, чтобы мой код презентации в одном месте (css) не был разбросан по моему проекту.

Редактировать Похоже, библиотека IE может это сделать: http://selectivizr.com/

Ответы [ 2 ]

1 голос
/ 20 декабря 2010

Для браузеров не IE6 вы можете использовать соседний селектор брата, если тип дочерних элементов всегда одинаков. Например, если вы хотите выбрать 5-й дочерний элемент li в списке:

ul: первенец> li + li + li + li + li { ... }

0 голосов
/ 17 декабря 2011

Есть много способов сделать это, но проще всего было бы использовать вспомогательную библиотеку, такую ​​как jQuery. Он поддерживает эти селекторы во всех браузерах, а также предоставляет гораздо больше инструментов.

Если вы не можете добавить зависимость, просто выберите похожую библиотеку и извлеките конкретную реализацию (убедитесь, что лицензия позволяет это).

Извините, но я не увидел вашу ссылку на jQuery в этом посте ... Пожалуйста, не обращайте внимания на вышесказанное. http://selectivizr.com/ кажется хорошим инструментом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...