我想在我的网页内容加载之前添加进度条,所以我想通过javascript动态加载它。这个内容在其html中嵌入了javascript。我尝试使用jquery.load(),除了它不支持对返回的内容不起作用的js这个事实外,它工作得很好
只是为了说清楚,我正在做的是加载所有内容:
$("#contentid").html("progressBar.gif");
$("#contentid").load(script.php #content)
$("#contentid").show();
并且在script.php返回的内容中有js调用,例如:
jquery.load (to crawl for data and displaying it when ready)
document.getElementById('some_div') (for chart api)
snippets that load widgets
我一直在尝试使用jquery.ajax,但不确定是否有可能使用它。我会喜欢这方面的一些意见。我能用它做到吗?
在加载脚本内容之前可能显示进度条的任何其他想法都会很棒。我正在尝试减少代码结构的变化,因为这种长时间的加载有时只会发生。
感谢。
答案 0 :(得分:0)
您可以使用进度条添加div,覆盖所有页面,并在加载页面后将其删除,使用:
$(window).load(function() {
$('#progressbar').remove();
});
答案 1 :(得分:0)
JQuery的load方法将回调函数作为参数。加载完成后将调用该函数,因此您可以在此时隐藏进度条。以下是API docs:
的示例$('#result').load('ajax/test.html', function() {
alert('Load was performed.');
});
在你的情况下,它会是这样的:
$("#contentid").load(script.php, function(){
$("#contentid").hide();
});