,可以使用
我想在每个((的每个迭代中更新消息计数
元素。我怎样才能做到这一点?我已经放了一个在每次迭代中递增的计数器。但是它行不通。
cityMarkerCanvas.each(function(d,ienter code here) {
var count=1;
var self = this;
var cb = function(){
$( "#inner1" ).append( "<p>Current tweet count:"+count+"</p>" );
var coords = projection([d.Lat, d.Long]);
d3.select(self)
.attr("cx", function(d) {
return coords[0];
})
.attr("cy", function(d) {
return coords[1];
})
.transition()
.attr("r", 3)
.attr("opacity", 1.0)
.duration(1000);
//console.log(i);
count++;
}
setTimeout(cb, 200*i);
})
您必须在每个循环之前初始化 count
,例如
var count=1;
cityMarkerCanvas.each(function(d,i) {
var self = this;
var cb = function(){
$( "#inner1" ).append( "<p>Current tweet count:"+(count++)+"</p>" );
var coords = projection([d.Lat, d.Long]);
d3.select(self)
.attr("cx", function(d) {
return coords[0];
})
.attr("cy", function(d) {
return coords[1];
})
.transition()
.attr("r", 3)
.attr("opacity", 1.0)
.duration(1000);
}
setTimeout(cb, 200*i);
});
您可以不使用count
变量。
(i+1)
代替(count++)
。