包含javascript的动态加载内容

问题描述

| 我想在网页内容加载之前添加进度条,所以我想通过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,尽管不确定是否可以使用它。愿意为此提供一些输入。我应该能够实现它吗? 在加载脚本的内容之前可能会显示进度条的任何其他想法都很好。我正在尝试减少代码结构的更改,因为这种长时间的加载仅在某些时候发生。 谢谢。     

解决方法

        您可以使用覆盖整个页面的进度条添加div,并在加载页面后使用以下方法将其删除:
$(window).load(function() {
  $(\'#progressbar\').remove();
});
    ,        jQuery的load方法采用回调函数作为参数。加载完成后,将调用该函数,因此您可以在此时隐藏进度栏。这是他们的API文档中的示例:
$(\'#result\').load(\'ajax/test.html\',function() {
  alert(\'Load was performed.\');
});
在您的情况下,它将类似于:
$(\"#contentid\").load(script.php,function(){
  $(\"#contentid\").hide();
});