附加重复的javascript对象

时间:2013-04-11 19:39:50

标签: javascript

在下面的代码中,我正在使用JS中的一个简单计时器。问题是结果代码只显示一组分隔符冒号。

var divider = $('<span>').addClass('divider').text(':');
stopwatchFace = stopwatchFace.append(timeHour).append(divider)
                             .append(timeMin).append(divider).append(timeSec);

有没有理由说第一个没被拿起?我应该明确定义divider1和divider2对象吗?

2 个答案:

答案 0 :(得分:4)

如果附加一个已经附加的元素,结果就是它被移动了。

您需要克隆元素。在vanilla JS中,这就像divider.cloneNode(true)一样简单 在jQuery中它也很简单:divider.clone()。感谢Boaz的信息^ _ ^

答案 1 :(得分:2)

使用需要克隆分隔符。由于分隔符是一个单独的元素,因此不能同时存在两个地方。

var divider = $('<span>').addClass('divider').text(':');
stopwatchFace = stopwatchFace.append(timeHour).append(divider.clone())
                             .append(timeMin).append(divider).append(timeSec);