读取JSON以添加图像

时间:2013-04-17 07:48:37

标签: jquery css json

我正在制作一个图像流滑块。如果我是硬编码,它工作正常。现在我使用JSON文件来指定如何从库中加载图像。图像加载成功但后来我的外部CSS文件和jquery没有正确加载。

任何帮助都将不胜感激。

<script>
      $(function(){
          var image= [{
    "src": "images/starting.jpg",
           "data-artist":"Gorillaz",
       "data-album":"Plastic Beach"
             },];

         $.each(image, function(){
       $('<img src="' + this.src+ '"  />').appendTo('#coverflow'); 
        });
   });

如果我正在写这个,

    <div class="wrapper">
        <div id="coverflow">
            <img src="img/gorillaz-plasticbeach.jpg" data-artist="Gorillaz" data-album="Plastic Beach"/>-->
            <!--<img src="images/thumb1.jpg" data-artist="Kings Of Leon" data-album="Come Around Sunshine"/>
            <img src="images/thumb2.jpg" data-artist="Kid Rock" data-album="Born Free"/>        
            <img src="images/thumb3.jpg" data-artist="Eminem" data-album="Recovery"/>
            <img src="images/thumb4.jpg" data-artist="Lil Wayne" data-album="I Am Not A Human Being"/>
            <img src="images/thumb5.jpg" data-artist="Taylor Swift" data-album="Speak Now"/>
            <img src="images/thumb6.jpg" data-artist="The Band Perry" data-album="The Band Perry"/>
            <img src="images/thumb7.jpg" data-artist="Maroon 5" data-album="Hands All Over"/>
            <img src="images/thumb8.jpg" data-artist="My Chemical Romance" data-album="Danger Days"/>
            <img src="images/thumb9.jpg" data-artist="Iron Maiden" data-album="The Final Frontier"/>
            <img src="images/thumb10.jpg" data-artist="Order Of The Black" data-album="Black Label Society"/>   
            <img src="images/thumb11.jpg" data-artist="Usher" data-album="Raymond V Raymond"/>-->
        </div>
    </div> 

然后它完美地运作。

我试过了

$.each(image, function(){
 $('<img src="' + this.src+ '" />').appendTo('#coverflow');            `$('#coverflow').appendTo('#wrapper');
 $('#wrapper').appendTo('#demo');
 $('#demo').appendTo('#pageWrapper'); }); 
alert ('I am all Done'); 
alert('Elements are ' +$('#coverflow').length); }); 

这里我在div中逐个添加图像。但最后当我在最后检查div #coverflow时,它只包含1个元素。虽然循环迭代11次

1 个答案:

答案 0 :(得分:0)

  1. 确保图像(来自“每个”)是一个具有src属性的对象(我知道你说它工作硬编码,只是确保它是一个对象,使用console.log(typeof image);在你做之前每个)
  2. .appendTo( '#的CoverFlow');是不正确的,你可能意味着.appendTo($('#coverflow'));你只能将东西附加到jquery对象(appendTo只适用于jQuery对象)
  3. 从一个简单的开始:

    $。each(image,function(){ 的console.log(image.src); });