Изображение YouTube Автоматическое название jQuery

133
17

ПРИМЕР: http://jsfiddle.net/CFXXC/5/У меня есть следующий HTML-код: с помощью src с помощью regex я могу извлечь каждый идентификатор img и с помощью json я могу получить заголовок изображения и вернуть его как атрибут, но он не " т работы.

<img src="http://i2.ytimg.com/vi/3ZqlS5A9Kjc/hqdefault.jpg"/>
<img src="http://i2.ytimg.com/vi/GRLtkjLxkiY/hqdefault.jpg"/>

$('img[src^="http://i2.ytimg.com/vi/"]').each(function(){ // selector and each function
var regex = new RegExp(/\/vi\/(.*)\//); //regex variable
var imgsrc = $(this).attr("src"); //Individual img src
var id = imgsrc.match(regex)[1];
$.ajax({
url: "http://gdata.youtube.com/feeds/api/videos/"+id+"?v=2&alt=jsonc", //using regex extracted id
dataType: "json",
success: function (data) {parseresults(data)}
});
function parseresults(result) {
console.log(result);
var imgtitle = result.data.title;
$(this).attr("title", imgtitle); //setting title from extracted id
}
});
$(document).ready(function () {
getYouTubeInfo();
});

спросил(а) 2021-01-25T12:47:24+03:00 4 месяца, 4 недели назад
1
Решение
63

Недопустимая область видимости переменной. Ваше "это" в parseresult не относится к изображению.

Как насчет этого ( jsFiddle):

$('img[src^="http://i2.ytimg.com/vi/"]').each(function() { // selector and each function
var regex = new RegExp(/\/vi\/(.*)\//); //regex variable
var imgsrc = $(this).attr("src"); //Individual img src
var id = imgsrc.match(regex)[1];
var img = this;
$.ajax({
url: "http://gdata.youtube.com/feeds/api/videos/" + id + "?v=2&alt=jsonc",
//using regex extracted id
dataType: "json",
success: function(data) {
parseresults(img,data)
}
});

function parseresults(img,result) {
var imgtitle = result.data.title;
$(img).attr("title", imgtitle); //setting title from extracted id
}
});

ответил(а) 2021-01-25T12:47:24+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема