2010-07-16 6 views
1

Я получаю изображение и информацию гиперссылки, возвращенную в JSON. Я хотел бы использовать плагин цикла, если это возможно.цикл через возвращенный json с помощью jquery

Пример: [["1.jpg","http:\/\/www.this.net\/"],["2.jpg","http:\/\/www.that.net\/"],["3.jpg","http:\/\/www.what.com/l"]]

Когда мой HTML первой загрузке страницы будет уже это:

<div id="container"><a id="changeLink" href="o.html" target="_blank"><img id="changeImage" src="100.jpg" /></a> 

Используя возвращаемый JSON, я хотел бы Переберите изображения путей/ссылки и обновляйте элементы changeLink и changeImage каждые 4 секунды. После того, как он достигнет конца, я бы хотел, чтобы он повторил.

При загрузке страницы:

<a id="changeLink" href="http://www.this.net" target="_blank"><img id="changeImage" src="1.jpg" /></a> 

через 4 секунды:

<a id="changeLink" href="http://www.that.net" target="_blank"><img id="changeImage" src="2.jpg" /></a> 

Через 8 секунд:

<a id="changeLink" href="http://www.what.com" target="_blank"><img id="changeImage" src="3.jpg" /></a> 

Через 12 секунд:

<a id="changeLink" href="http://www.this.net" target="_blank"><img id="changeImage" src="1.jpg" /></a> 

Через 16 секунд:

<a id="changeLink" href="http://www.that.net" target="_blank"><img id="changeImage" src="2.jpg" /></a> 

Через 20 секунд:

<a id="changeLink" href="http://www.what.com" target="_blank"><img id="changeImage" src="3.jpg" /></a> 

и так далее.

+0

Вы хотите, чтобы вы выполняли бесконечный цикл? – ChaosPandion

+0

Что вы пробовали? и вы имеете в виду, что хотите отобразить одно изображение в течение некоторого времени, затем отобразить другое, а затем цикл? –

+0

SB, Я хочу начать с одного изображения, затем прокрутить пути изображения в возвращаемом JSON. Я также хочу связать изображения с соответствующими гиперссылками в возвращаемом JSON. user391416

ответ

0

Похоже, вы хотели бы взять возвращенный JSON, использовать его для генерации <img> элементов в DOM с использованием атрибута src, указывающего на URL-адреса в JSON, а затем применить функциональные возможности для циклического просмотра изображений.

Этого можно достичь, используя, например, cycle plugin. Что-то вроде следующего должно работать. Примечание: тестировалась

$.getJSON('jsonArray.php', function(data){ 
     var imgs = $.map(data, function (e, i) { 
      return $('<img>').attr('src', e[1] + e[0]); 
     }); 
     $('#container-for-imgs') 
      .append(imgs) 
      .find('img') 
      .cycle({ 
       fx: 'fade' 
      }); 
    }); 

EDIT:

В ответ на комментарий, я думаю, что вы хотели бы сделать что-то вроде этого. Вы станете более конкретным, если я неверно истолковал

$.getJSON('jsonArray.php', function(data){ 
     var change = ['changeLink', 'changeImage'], 
      anchors = $.map(data, function (e, i) { 
       var anchor = $('<a target="_blank" >').attr('href', e[1]).attr('id', change[0] + i); 
       return $('<img>').attr('src', e[0]).attr('id', change[1] + i).appendTo(anchor); 
      }); 
     $('#container-for-elements') 
      .append(anchors); 
    }); 
+0

Закрыть. Извините, я не объяснял лучшую работу. Я хотел бы перебирать атрибуты href, src в возвращаемом JSON. Ex: user391416

+0

, когда вы говорите, через цикл, что вы имеете в виду?Вы имеете в виду цикл через массив и построите элемент '' со вторым элементом в каждом массиве во внешнем массиве и построим элемент '' с первым элементом каждого массива в массиве? –

+0

точно. спасибо за четкое определение моей проблемы. – user391416

Смежные вопросы