2010-12-15 86 views
8

我目前遇到了下列故障(下面是一些示例代码在前):如何选择通过jQuery load()函数加载的元素?

<div id="container"></div> 

<script type="text/javascript"> 
    $('#container').load('content.html'); 

    $('.elementInContentHTML').fadeIn(); 
</script> 

总之,我希望能够访问那些被动态地添加到页面元素,而它们连接到事件处理程序。

我了解live()的方法,但我希望我的行为绑定到任何活动,即我只是想不点击它们,聚焦,模糊运行这些新元素的一些动作等

回答

15

load功能是异步的。
您的下一行在加载内容之前运行。

你需要把你的代码load功能的回调里面,所以它只能运行在加载新内容之后:

$('#container').load('content.html', function() { 
    $('.elementInContentHTML').fadeIn(); 
}); 
3

你可以尝试使用加载完成时的回调?见http://api.jquery.com/load/

$('#result').load('ajax/test.html', function() { 
    alert('Load was performed.'); 
});