Есть ли способ добавить альтернативный текст в тег img, используя jquery? - PullRequest
1 голос
/ 01 июля 2019

Существует тег img, размещенный на скрытой части моего WordPress сайта с помощью некоторого Java-скрипта. Каждый раз, когда я запускаю сканирование на своем сайте в поисках ошибок доступности, это происходит на каждой странице каждого сайта. Мне было интересно, есть ли способ добавить к нему тэг alt, говорящий «это пусто» или что-то действительно, так как в любом случае невозможно достичь или увидеть.

Я пытался найти другие альтернативы, но пока мне не повезло, поэтому любая помощь будет принята с благодарностью. Хорошо, что к нему прикреплено имя класса, так что, надеюсь, это поможет.

<div class="className">
     <img>
  <div>
  </div>
</div

Ответы [ 3 ]

2 голосов
/ 01 июля 2019

Это все, что вам нужно:

$('img').attr('alt', 'Whatever you want');

или, если вам нужно, на основе имени класса в вашем примере:

$('.className > img').attr('alt', 'Whatever you want');
0 голосов
/ 01 июля 2019

С помощью этого сценария вы можете установить стандартный тег alt для всех изображений, которые имеют ложный тег alt (без тега alt, пустой строки и т. Д.).

Важно отметить, что у тегов alt есть причина.Люди, которые используют тексто-ориентированный браузер (например, слепые люди), используют этот тег alt, чтобы они хотя бы знали, какое изображение там.Он также используется некоторыми браузерами, когда изображение не может быть загружено.Поэтому убедитесь, что все изображения без тега alt (в вашем выборе jQuery) всегда скрыты, если вы хотите использовать тег alt по умолчанию, иначе это может раздражать.

$('img').filter(function() {
  return !this.alt;
}).attr('alt', 'this is empty');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="className">
  <img src="https://dummyimage.com/50x50/000/fff.png&text=test">
  <img alt="" src="https://dummyimage.com/50x50/000/fff.png&text=test2">
  <img alt="has alt" src="https://dummyimage.com/50x50/000/fff.png&text=test3">
</div>
0 голосов
/ 01 июля 2019

Да, вы всегда можете добавить атрибут к изображению с помощью jquery, сделайте это следующим образом

$('img').attr('alt', 'This is very nice image');

Если у вашего изображения есть класс, чем вы можете использовать

$('.class_name').attr('alt', 'This is very nice image');

Если вашизображение имеет идентификатор, который вы можете использовать

$('#id_name').attr('alt', 'This is very nice image');
...