当用户单击网页中的选项卡时,将打开该选项卡,并从服务器下载相应的页面。
我想通过java脚本或jquery在此页面中添加一些UI。我知道如何添加这个,但问题是如果我执行我的java脚本函数在单击选项卡时添加UI,它不起作用,因为相应的页面尚未下载。
基本上,我想知道在页面完全下载时调用的这种功能。
答案 0 :(得分:1)
您是否使用过JQuery成功?只有在您的响应准备好后才会调用成功处理程序。 试试这个:
$.ajax({
url: "test.html",
context: document.body,
success: function(){
//Do the stuff here, hence downloading has been completed and response from server is ready
$(this).addUI("done");
}
});
答案 1 :(得分:0)
在页面正文中添加..
<body onload="init()">
</body>
基本上你打电话给你的init function
- 只有在加载网页正文后才启动你想要的所有其他功能..
答案 2 :(得分:0)
我也遇到过这个问题。这里的问题是你的内容在你开始工作之前还没有 您提供的任何引用都将导致返回 Null 解决方案可以是.bind()&amp; .live()
假设这是您的动态内容
$('body').append('<div class="clickme">Another element</div>');
你可以用,
$('.clickme').bind('click', function() {
// Bound handler called.
});
或通过
注册实时内容$('.clickme').live('click', function() {
// Live handler called.
});
不再需要时,您可以通过 .die()取消订阅动态内容上的活动
你也可以找到 .delegate()&amp; undelegate()非常有用,因为.live()&amp ;; 。死()。
检查http://www.alfajango.com/blog/the-difference-between-jquerys-bind-live-and-delegate/以选择您的申请所需的那个
记住不要忘记你确保内容是由ajax成功加载的,如上所述programmer_1
祝你好运:)
任何进一步的澄清请评论。