为了简单起见,我只是不明白为什么这不起作用.
我需要在文档的正文中附加一个div,然后再将相同div的副本附加但是隐藏,然后是另一个div,然后是另一个div的副本,但是隐藏了,依此类推......
$.each(myObj.items, function(i, item) {
// createItem simply finds an html fragment in the document,
// clones it and returns it
var $i = createItem(item);
// add a div first that clears floats - this is needed before every item
$('body').append('<div class="clear"/>');
// append a clone of the html fragment
$('body').append($i.clone());
// add another div that clears floats
$('body').append('<div class="clear"/>');
// append a clone of the html fragment but hide it
$('body').append($i.clone().addClass('hidden'));
});
Run Code Online (Sandbox Code Playgroud)
我期待:
<body>
<div class="clear"/>
<div class="item">item</div>
<div class="clear"/>
<div class="item hidden">item</div>
<div class="clear"/>
<div class="item">item</div>
<div class="clear"/>
<div class="item hidden">item</div>
...
</body>
Run Code Online (Sandbox Code Playgroud)
但我得到..
<body>
<div class="clear"/>
<div class="item">item</div>
<div class="clear"/>
<div class="item">item</div>
<div class="clear"/>
<div class="item hidden">item</div>
<div class="clear"/>
<div class="item">item</div>
<div class="clear"/>
<div class="item hidden">item</div>
...
</body>
Run Code Online (Sandbox Code Playgroud)
为什么第一个跳过?
编辑
我的源代码html是这样的:
<html>
<body>
<div class="template hidden">..</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我克隆模板div,将其返回到我的函数,添加一个div(class ='clear'),然后是返回div的一个克隆,然后另一个div(class ='clear')然后另一个克隆返回的div
我的列表中不超过5个项目.
编辑2
愚蠢的用户错误...代码工作正常.我没有意识到我的第一行是硬编码而不是自动生成的.
对不起伙计......(感到愚蠢)