Проблема слайд-шоу в jQuery с заполненным div из ленты JSON - PullRequest
0 голосов
/ 04 ноября 2011
$(document).ready(function() {

$.getJSON("http://api.flickr.com/services/feeds/groups_pool.gne?id=89254480@N00&\
lang=en-us&format=json&jsoncallback=?", getJSONimages);

function getJSONimages(data) {
var htmlString = "";
$.each(data.items, function(i,item){
var sourceSquare = (item.media.m).replace("_m.jpg", "_s.jpg");
htmlString += '<img src="' + sourceSquare + '" />';
});
$('#slideshow').html(htmlString);
}
})

Выше приведены изображения в формате, который мне нужен для слайд-шоу:

<div id="slideshow"><img src="url"></div>

А приведенный ниже код является слайд-шоу, которое само по себе хорошо работает:

$('#slideshow').slideshow({
timeout: 2000,
type: 'random',
pauselink: 'sequence',
fadetime: 2000
});

Конечно, загружен еще один js-файл размером 2 КБ, часть слайд-шоу и Библиотека jQuery загружена из Google.

Я новичок в JavaScript, и я просто не понимаю, это не работает, я думаю, мне нужно запустить первый код, чтобы получить теги img в div #images и затем запустите js-код для слайд-шоу .. но как мне это сделать?

Оба в тех же тегах не работает, отдельно не работает, оба их в шапке.

Есть идеи, пожалуйста? Спасибо.

P.S. Я не нашел никаких правил, касающихся этого, и я надеюсь, что не нарушу правила, мне действительно нравится это сообщество, так как я многому научился здесь. Вот ссылка .. http://demetriad.co.uk/flickr-test/

1 Ответ

1 голос
/ 04 ноября 2011

Я думаю, что проблема в том, что вы запускаете скрипт слайд-шоу, когда HTML-код пуст. Этот сценарий настроит все изображения в целевом элементе как часть слайд-шоу, и изображений не будет, пока не завершится вызов ajax.

Возможно, вы можете попробовать переместить код, который запускает слайд-шоу, в конец обратного вызова ajax

...