2011-03-15 103 views
0

我有一个图像列表。当程序启动时,我想克隆列表并加上它。 这是我到目前为止的代码:克隆列表项Jquery

var children = $("#imageList").children().clone(); 

$("#imageList").prepend(children); 

为什么这不在列表中克隆的孩子吗?当我测试程序时,我只有原始列表。

更新:这里是图像列表:

<ul id = "imageList"> <!-- List of scrolling images --> 
       <li id = "image1" class = "ImagesScroller"> 
        <div> 
         <a href "www.url.com">Somethimes Click This</a> 
        </div> 
        <div> 
         <img src = "Image1" height = "200" width = "500" alt = "/" /> 
        </div> 
       </li> 
       <li id = "image2" class = "ImagesScroller"> 
        <div> 
         <a href = "www.url.com">Always Click This</a> 
        </div> 
        <div> 
         <img src = "Image2" height = "200" width = "500" alt = "/" /> 
        </div> 
       </li> 
       <li id = "image3" class = "ImagesScroller"> 
        <div> 
         <a href = "www.url.com">Don't Click This</a> 
        </div> 
        <div> 
         <img src = "Image3" height = "200" width = "500" alt = "/" /> 
        </div> 
       </li> 
       <li id = "image4" class = "ImagesScroller"> 
        <div> 
         <a href = "www.url.com">Click This (On Tuesdays)</a> 
        </div> 
        <div> 
         <img src = "Image4" height = "200" width = "500" alt = "/" /> 
        </div> 
       </li> 
      </ul> 

它不只是一个图像的列表。每张图片都有一个与该图片相关的链接。图像将动画(使用.animate())循环播放。我需要追加和附加图像,以便我所做的“循环”将是无止境的。

+2

什么是对#imageList标记是什么样子? – 2011-03-15 14:13:42

+0

它在“更新”部分 – 2011-03-15 14:29:10

回答

3

确保你的代码是一个jQuery的“准备”处理程序中:

$(function() { 

    var children = $("#imageList").children().clone(); 

    $("#imageList").prepend(children); 
}); 

如果您在<head>运行在一个<script>块的代码,那么就不会在DOM的任何元素呢,所以代码不会做任何事情。

你可以放或者一个简单的脚本块(只是你的代码,如贴),放置后,列表和图片等

+0

我把它全部放在一个准备好的处理程序中(对不起,我没有显示我的代码很多)。在我的问题中显示的接下来的两行是:“$(document).ready(function(){”line – 2011-03-15 14:28:47

+0

啊,那么代码看起来很好,你能显示一些HTML吗?你刚刚添加它:-) – Pointy 2011-03-15 14:29:21

+0

我使用的列表是在更新的部分。这是关于我所有的HTML。我的代码中大部分代码都使用了animate(),但我认为这不会导致此问题。我可以根据需要添加它 – 2011-03-15 14:31:15

1

没有看到你的HTML很难说什么可能是错误的。如果你想预先列出一个列表中的孩子,你的代码看起来是正确的。见我的例子:

HTML:

<ul id="list"> 
    <li><img src="/some/image1.jpg" /></li> 
    <li><img src="/some/image2.jpg" /></li> 
    <li><img src="/some/image3.jpg" /></li> 
</ul> 

的jQuery:

$(document).ready(function(){ 
    var children = $("#list").children().clone(); 
    $("#list").prepend(children);  
});