d3js - select().on('click')的问题



Fiddle:

http://jsfiddle.net/FN2Ab/6/

在 html 中,我有一个

<button id="start">start!</button>

我想做的

d3.select("#start").on('click',printTimers())

其中 printTimers 是一个函数,它将时间戳附加到所有

<div class="timer">.

但是,.on('click',printTimers())不起作用。它不是在按下开始按钮时附加时间戳,而是在页面加载后立即附加时间戳。

我对 d3js 和 webdev 很陌生,我正在努力弄清楚它在哪里被破坏了。我看过的资源没有帮助;希望有人能指出我做错了什么?

这是因为您在尝试绑定函数时正在调用该函数。删除函数名称后面的括号,以便将函数引用发送到 on 方法中,而不是调用该方法的结果:

d3.select("#start").on('click', printTimers);

最新更新