#jquery #ajax #json #reddit
#jquery #ajax #json #Reddit
Вопрос:
У меня есть следующая функция, которая использует JSON api Reddit для отображения последнего комикса Rage из подредакта «/ r / fffffffuuuuuuuuuuuuu». Я заставляю его извлекать URL-адрес изображения и выводить его как img. Проблема, однако, в том, что иногда представленный комикс использует ссылку на изображение на ‘imgur.com «вместо прямой ссылки, которая находится на»i.imgur.com .’
Сначала я попытался разделить запрошенный URL-адрес, чтобы получить строку только после ‘/’, но проблема по-прежнему заключалась в том, что она не содержала тип изображения (т. е. ‘.png’, ‘.jpg’ и т. Д.).
Мой вопрос в том, как я могу получить img src для URL-адресов, которые не являются прямым img src из i.imgur.com ?
Как вы можете видеть из приведенного ниже кода, единственное решение, которое у меня есть на данный момент, — это вывести сообщение об ошибке, если 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:
В настоящее время вы можете пропустить такие URL-адреса, которые не заканчиваются на .png, .jpg, .jpeg, .gif или другие расширения изображений. Следующим шагом будет фактическая загрузка целевого URL-адреса в imgur (примечание: не все ссылки будут указывать на imgur.com но большинство так и есть) и извлекают изображение из html, что было бы немного сложно с помощью jquery. Кроме того, на imgur или других сайтах есть функция, позволяющая показывать слайд-шоу. Что вы будете делать в этих случаях?