Задать вопрос
@TitNIk

Как присвоить класс только к ссылке на картинку с помощью JS?

Доброго вечера. Нужно присвоить определенный класс к ссылке на изображение в определенном классе )) Если проще, как на JS определить, является ли ссылка на изображение или нет? Заранее спасибо!
  • Вопрос задан
  • 217 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
Примерно так на чистом js https://jsfiddle.net/uh06Ljum/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@artem78
Если URL ссылки содержит расширение файла, то можно так:
jQuery('a[href$=".jpg"]').addClass('newClass');
Ответ написан
Комментировать
Stalker_RED
@Stalker_RED
Ссылки на картинку могут быть и без расширения.
пример http://lorempixel.com/400/200/sports/
sports
Тогда как-то так:
$('a').each(function(){
  var $link = $(this)
  var url = this.href;
  var xhr = new XMLHttpRequest();
  xhr.open('HEAD', url);
  xhr.onreadystatechange = function() {
    if (this.readyState == this.DONE || this.readyState == this.HEADERS_RECEIVED) {
      var contentType = xhr.getResponseHeader("Content-Type")
      if (contentType.substr(0, 5) == 'image') {
        $link.addclass('myClass')
      }
    }
  };
  xhr.send();  
})


Если вы уверены, что у ссылок будут расширения, то можно вообще без скриптов, на css.
a[href$=".png"],
a[href$=".gif"],
a[href$=".jpeg"],
a[href$=".bmp"] {
  border: solid 2px orange;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы