YouTube图片自动标题jQuery



示例:http://jsfiddle.net/CFXXC/5/我有下面的HTML,使用regex的src,我可以提取每个img的ID,使用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's 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();
});

您的变量范围错误。parseresult中的"this"并不是指图像。

这个怎么样(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's 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
    }
});

最新更新