2010-08-14 96 views
1

我正在使用页面上的jQuery $(document).ready()事件。一切正常,但 如果我使用Ajax调用加载数据,则$(document).ready()事件不会触发。我猜它的行为是这样的,因为页面已经被加载,我只是从Ajax响应中添加更多的数据到DOM。重温jQuery就绪事件?

我该如何反思ready事件?

回答

1

如果你需要运行一些其它附加JavaScript中,你可以使用你呼吁函数Ajax回调的onComplete事件:

function initJS(){ 
    //your code here 
} 

$.ajax({ 
    url: 'ajax/test.html', 
    success: function(data){ 
    }, 
    complete: function(){ 
     initJS(); 
    } 
}); 
0

只是打破了“$(document).ready(function(){});”中的逻辑。阻止到一个单独的功能。然后,页面在“准备就绪”时会调用一次,并且当您想要刷新时可以直接调用该功能。

1

.load(),.bind(),或.live()将在这里你的朋友....

0

我认为,这个人问的是,因为大多数开发人员做的jQuery插件,即WordPress插件使用“准备就绪”功能。

这里的每个人都在说要去修改插件!

我正面临同样的问题,因为我正在开发AJAX模板的WP和大多数插件不工作!