2016-04-19 24 views
3

我尝试触发用户单击事件,然后使用JQuery的点击方法。问题是我在我的onclick函数后创建了我的元素。 我读过herehere,我们可以点击功能,但我的代码回路之间增加一个应答器名称n.apply is not a function如何在创建我的元素之前使用“点击”

这里是我的JQuery方法:

d3.selectAll("body") 
    .on('click', '.child', function(){ 
       console.log("here");} 

,后来,这个代码返回好的内容:

console.log(d3.selectAll("body .child")); 
+0

浏览器中是否有任何控制台错误?也有你把你的代码放在'$(document).ready ...'中? –

+0

什么都不是:n.apply不是func –

+1

尝试用'$(document).on('click','.child',function(){'它可以工作,但这不是正确的解决方案 –

回答

1

注册事件试试这个:使用$(document)的父元素委托点击事件调用

$(document).on('click', '.child', function(){ 
    console.log("here"); 
}); 
0

似乎 - 至于语法是好的 - 即处理程序没有注册,因为d3.selectAll确实没有T回流没有元素对

1

当你创建一个元素,您可以添加一个处理程序。只需创建一个jQuery OBject并将其添加到您需要的任何内容。注意:Click功能也可以内联。

Example: https://jsfiddle.net/rfccvgLm/ 
相关问题