jQuery追加顺序
尽管如此简单,我还是不明白为什么这不起作用 我需要在文档正文中附加一个div,然后是同一个div的一个副本,但隐藏,然后是另一个div,然后是另一个相同div的副本,但隐藏,等等jQuery追加顺序,jquery,append,Jquery,Append,尽管如此简单,我还是不明白为什么这不起作用 我需要在文档正文中附加一个div,然后是同一个div的一个副本,但隐藏,然后是另一个div,然后是另一个相同div的副本,但隐藏,等等 $.each(myObj.items, function(i, item) { // createItem simply finds an html fragment in the document, // clones it and returns it va
$.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'));
});
$。每个(myObj.items,函数(i,item){
//createItem只是在文档中查找html片段,
//克隆并返回它
var$i=createItem(项目);
//首先添加一个清除浮动的div-这在每个项目之前都是必需的
$('body')。追加('');
//附加html片段的克隆
$('body').append($i.clone());
//添加另一个清除浮动的div
$('body')。追加('');
//附加html片段的克隆,但将其隐藏
$('body').append($i.clone().addClass('hidden'));
});
我期待着:
<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>
项目
项目
项目
项目
...
但是我得到
<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>
项目
项目
项目
项目
项目
...
为什么第一个跳过
编辑
我的源html如下所示:
<html>
<body>
<div class="template hidden">..</div>
</body>
</html>
..
我克隆了模板div,将其返回到我的函数中,添加一个div(class='clear'),然后是返回div的一个克隆,然后是另一个div(class='clear'),然后是返回div的另一个克隆
我的列表中的项目不超过5项
编辑2
愚蠢的用户错误。。。代码运行良好。我没有意识到我的第一行代码是硬编码的,不是自动生成的
对不起,伙计们。。。(觉得自己很愚蠢)您正在克隆一组现有的div吗?也就是说,您的页面上已经有一个克隆,因此您的函数会克隆并添加一个常规克隆,然后添加另一个隐藏的克隆。代码适合我(http://jsfiddle.net/alnitak/M5PQ8/),当使用三项调用时
你确定你自己没有把多余的球放在身体里吗?您的
myObj中有多少项。items
?能否提供一个(非)工作示例?这似乎是这样的:这是令人沮丧的部分。我不明白为什么它不起作用,而你已经确认它起作用了,但出于某种奇怪的原因(请原谅开发人员的咒语),它在我的机器上不起作用?我已经克隆了隐藏的div,然后删除隐藏的类并返回到我的函数。我把这个附加到文档上,但是因为我想在它的正下方附加一个副本,所以我再次克隆了它。好吧,你刚才回答了你自己!把它拿走,我真蠢。对不起大家。我刚刚看到一个是硬编码的,其他的都是生成的。我再次道歉。。。RTFM是否应该…@Alan-前几天我在推特上看到了一个很好的短语:“今天不能动脑筋。我有哑巴。”发生在我们所有人身上:)@Alan-很高兴你明白了!