Jquery, как выбрать элемент по обратному атрибуту имени

Я хочу выбирать элементы только по имени обратного атрибута:

Я выбираю с [^safe] или [!safe], неправильно

Мой HTML:

<ul>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
</ul>

Мой код jQuery:

$("a[^safe]").each(function(){
    $(this).css({"color": "red", "border": "2px solid gold"});
});

Мой jsFiddle:

https://jsfiddle.net/Lpr4tow1/1/

Вы ищете элементы без безопасного атрибута? $('a:not([safe])') или $('a').not('[safe]')

Taplar 05.03.2019 21:38

Примечание; вам не нужен явный каждый. css() и большинство методов jQuery выполняют неявную операцию each над стеком результатов.

Taplar 05.03.2019 21:39

Спасибо @Taplar, уже решено. :)

Renato Ramos Puma 05.03.2019 21:48
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
3
45
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать селектор :not(), чтобы внести изменения, или просто создать для него правило css и вообще обойтись без javascript.

Хотя, если вы выберете чистый способ css, вы, скорее всего, захотите ограничить область селектора, чтобы он не был таким глобальным.

$('a:not([safe])').addClass('not-safe')
.not-safe {
  color: red;
  border: 2px solid red;
}
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
</ul>

a:not([safe]) {
  color: red;
  border: 2px solid red;
}
<ul>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
  <a safe href = "#">Link Base</a>
</ul>

Спасибо за ваше время и за вашу ценную помощь. :)

Renato Ramos Puma 05.03.2019 22:01

Другие вопросы по теме