如果图像不是图像,请获取图像的URL?

时间:2011-10-16 17:02:00

标签: jquery ajax json reddit

我有以下功能,使用Reddit的JSON api从subreddit“/ r / fffffffuuuuuuuuuuuu”列出最新的Rage Comic。我把它拉出图像URL并输出为img。然而问题是,有时提交的漫画使用“imgur.com”上的图像链接,而不是“i.imgur.com”上的直接链接。

我最初尝试拆分请求的URL,所以我只得到'/'之后的字符串,但问题仍然是它不包含图像类型(即'.png','.jpg'等)

我的问题是,如何从i.imgur.com获取不是直接img src的URL的img src?

从下面的代码中可以看出,我目前唯一的解决方案是在img不存在的情况下输出错误。

这是功能:

var i = -1;

function rage(data) {
    var rageURL = data['data']['children'][i]['data']['url'];
    $('#comic .rage-wrap').html('<img src="'+rageURL+'" />');
    $('img').load(function() { $('.rage-wrap').fadeIn(400); });
    $('img').error(function() { alert('whoops!'); });

};
function nextRage() {
    $('.next-rage').live('click', function() {
        $('.rage-wrap').fadeOut(400);
        i++;
        $.ajax({
          type: "GET",
          url: "http://www.reddit.com/r/fffffffuuuuuuuuuuuu/.json",
          dataType: "jsonp",
          jsonp: "jsonp",
          success: rage
      });     
    });

};

1 个答案:

答案 0 :(得分:0)

目前,您可以跳过不以.png,.jpg,.jpeg,.gif或其他图片扩展名结尾的网址。下一步是在imgur上实际加载目标url(注意:并非所有链接都指向imgur.com但大多数都是)并从html中检索图像,使用jquery会有点困难。此外,imgur或其他网站具有允许幻灯片放映的功能。在这些情况下你会做什么?