带有回调的 jQuery 克隆函数 - 未按预期工作
jQuery Clone function with callback - not working as expected
首先,这里有一个JSfiddle与我的工作:http://jsfiddle.net/xzGxR/
JavaScript:
function dataClonePrototype(JSOtarget, ElementPrototype, callback) {
for (i = 0; i < JSOtarget.length; i++) {
var TargetElement;
if (!Eclone) { // Only create it on first interval
TargetElement = $(ElementPrototype);
var Eclone = TargetElement.clone(); // We only want to create a copy of this clone...
} else {
TargetElement = Eclone.clone().insertAfter(ElementPrototype);
}
callback(TargetElement, JSOtarget[i]);
}
}
var returnedJSO =
{
"Animals": [
{
"Title": "Dogs",
"Amount": 300
},
{
"Title": "Pigs",
"Amount": 230
},
{
"Title": "Cats",
"Amount": 340
}
]
}
dataClonePrototype(returnedJSO.Animals, "section#animals", function(Element, JSOtargetAtKey) {
Element.children("header").html(JSOtargetAtKey.Title);
Element.children("article").html(JSOtargetAtKey.Amount);
});
和 HTML:
<section id="animals">
<header></header>
<article></article>
</section>
输出应(视觉上)如下所示:
Dogs
300
Pigs
230
Cats
340
然而,它看起来像这样。
Dogs
300
Cats
340
Pigs
230
Cats
340
这样做的目标是使用 HTML 并创建它的克隆 - 然后用来自 javascript 对象的数据填充这些克隆。它应该像这样填充:
<section id="animals">
<header>Dogs</header>
<article>300</article>
</section>
克隆的代码有问题,但我无法弄清楚是什么。任何建议/帮助真的非常感谢。
试试这个jsFiddle
function dataClonePrototype(JSOtarget, ElementPrototype, callback) {
$TargetElement = $(ElementPrototype);
for (i = 0; i < JSOtarget.length; i++) {
var $Eclone = $TargetElement.clone(); // We only want to create a copy of this clone...
callback($Eclone, JSOtarget[i], $TargetElement);
}
}
dataClonePrototype(returnedJSO.Animals, "section#animals", function($Element, JSOtargetAtKey, $Prototype) {
$Element.children("header").html(JSOtargetAtKey.Title);
$Element.children("article").html(JSOtargetAtKey.Amount)
$Element.insertAfter($Prototype);
});
相关文章:
- 咖啡的Javascript订单总数无法使函数正常工作.请协助
- removeClass函数没有'工作不正常
- 你能解释一下这个阶乘函数是如何工作的吗?
- JavaScript链接在点击时不起作用;函数在页面加载时工作
- jQuery加载的async和ready函数不工作
- 更改智能表中的页面将停止JQuery函数的工作
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- jQuery函数不能只在一个页面上工作
- 如何检查这个代码点火器php函数是否工作,该函数是否在ajax url中使用
- 从js引擎的角度来看闭包和构造函数是如何工作的
- appendChild在函数外部工作,但在函数内部不工作
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- 由于某种原因,我的JavaScript函数无法工作
- 为什么递归生成器函数没有't在ES2015工作
- 我需要一个jQuery函数来只工作在700px以上的屏幕大小,无法在我的代码中发现错误
- 从控制台中的工作函数转换为工作脚本.(请参阅编辑)
- Angular JS-工作函数中的“错误:[$interpole:interr]Can't interpole:
- 简化工作函数以替换特定单词
- 为什么不在回调中工作函数?
- InnerHTML不工作:函数未定义