d3js - select()。on('click')问题

时间:2014-02-20 23:28:23

标签: javascript dom d3.js

小提琴:

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都很陌生,而且我正在试图弄清楚它在哪里被破坏了。我看过的资源没有用;希望有人可以指出我做错了什么?

1 个答案:

答案 0 :(得分:0)

那是因为当你试图绑定它时你正在调用该函数。删除函数名后面的括号,以便将函数引用发送到on方法而不是调用方法的结果:

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