Вытащить значение альта

Я хочу использовать Javascript или jQuery, чтобы извлечь тег alt из определенного изображения, которое было щелкнуто в HTML, и скопировать его значение в поле заголовка.

function change_image(diff){
  var newAlt = $(this).attr('alt');
  position = (position + diff + hrefs.length) % hrefs.length;
  revealImage(hrefs[position]);
  $nav.find('.counter').html(newAlt);
}

Это то, что я до сих пор, и это не работает.

1 ответ

Вы используете this Ключевое слово внутри вашей функции, оно будет ссылаться на элемент, который вызвал событие, если вы связываете его следующим образом:

$('img').click(change_image);

Но так как у вас есть аргумент в вашей функции, я думаю, что вы вызываете его с помощью обычного вызова функции, таким образом, контекст (this Ключевое слово) не сохраняется, вы можете:

$('img').click(function () {
  change_image.call(this, 5); // preserve the context and pass a diff value
});
Другие вопросы по тегам