JQuery访问动态创建的对象

如何加入动态生成的对象(div)。 我的意思是当$(document).ready(function()启动时,输出中没有$(document).ready(function()

如果我做:

 $('#click_me').click(function() { $('#container').append('
can you click on me?
'); }); $('#clicker2').click(function() { alert('hurray, it works'); });

clicker2不起作用

我该如何解决? 我打算动态创建多个。 我也希望将Jquery操作分配给它们。

.click()函数不能在以后添加的spans或div上运行,你需要使用.live()

 $("#clicker2").live("click", function(){ # do stuff to spans currently existing # and those that will exist in the future }); 

创建div explicity并在追加它之前汇编其属性和事件。

 var $div = $('
').append('can you click on me?').attr('id', 'clicker2').click(function() { alert('hurray, it works'); }); $('#container').append($div);

只需将click绑定放在第一个单击function中:

 $('#click_me').click(function() { $('#container').append('
can you click on me?
'); $('#clicker2').click(function(){ alert('hurray, it works'); }); });

正如你所知,绑定被调用,但没有“div#clicker2”绑定到第二个函数。

希望这可以帮助。