CSS-селекторы в Javascript со всеми тегами H
-
05-07-2019 - |
Вопрос
Используя библиотеку Prototype JS, я хочу выбрать все дочерние элементы ссылки (теги A ) независимо от того, является ли их родительский элемент: H1 , H2 , H3 , H4 или H5 (и т. д.) с простым правилом выбора CSS (в отличие от дальнейшего JS, как цикл и т. Д.).
Итак, простой, но долгий путь сделать это:
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
Полагаю, мне нужно подстановочное свойство, например h *, которого не существует.
Может быть, вышеприведенный пример - путь, но я надеюсь, что есть более простой, более краткий и эффективный способ сделать это.
Советы приветствуются.
Решение
Как следует из комментария Фабьена М & # 233; к первоначальному вопросу, похоже, что не существует простого селектора CSS, который я мог бы использовать, кроме того, который у меня уже есть.
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
Хотя есть и другие варианты, если я хочу проявить программирование в этом вопросе или пустой JQuery (что для меня не вариант), я специально ищу правило CSS.
Спасибо всем, кто пытался помочь.
Другие советы
Использование jQuery:
$(":header a")
http://docs.jquery.com/Selectors/header говорит: р>
: header Соответствует всем элементам заголовков, таким как h1, h2, h3 и т. д.
Добавляет цвет фона и текста ко всем заголовкам на странице.
$(":header").css({ background:'#CCC', color:'blue' });
получил ответ на этот вопрос от разработчиков прототипа. это лучшие и единственные решения, по крайней мере, на данный момент:
$('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a, h6 > a')
$('page').select('h1 > a, h2 > a, h3 > a, h4 > a, h5 > a')
Однако в следующей версии Prototype вы сможете выбрать механизм выбора и по умолчанию использовать Sizzle . Псевдо-селектор : header
на самом деле является частью Sizzle, поэтому будет доступен в будущих версиях прототипа (если вы выберете sizzle в качестве механизма выбора). Я предполагаю, что это не было ранее включено, поскольку это не является частью какой-либо спецификации.