Javascript 如何使用Ajax将页面引入我的站点,然后等待它完全加载脚本和所有内容
我有一个网站,将页面拉入动态界面。目前,主页要求外部页面所需的任何javascript都与主页一起加载。外部页面拥有的大多数javascript都是在页面被拉入时构建的对象,但首先会导致问题 由于某些原因,我有点难以解释,所以这里有一个简单的过程介绍 1.请求将页面拉入 2.根据传递给函数的变量创建一个特定对象,该对象将与来自页面的物理html相关联(这是外部Javascript) 3.将页面加载到对象框架中 此流要求将外部javascript附加到主页面,而不是被拉入的页面 我想切换第2步和第3步,但我假设在尝试创建指定对象之前,我需要知道页面及其所有脚本已完全加载,但我不知道如何做到这一点 我正在使用jQuery,希望这可以在没有插件的情况下实现,但如果需要的话,就这样吧 谢谢 更新 好问题。因此,这些页面是我们在此时构建的本地页面,因此我们知道将要发生什么。此外,这些页面被加载到基本的div结构中 具体来说,主页会发出获取页面的请求。该页面以字符串的形式返回,然后粘贴到主页上的div元素中。我想这些页面更像是片段。但它们可以是相当复杂的,需要一些javascript,也可以是完全不使用任何javascript 外部javascript通常通过脚本标记添加,而不是内联的Javascript 如何使用Ajax将页面引入我的站点,然后等待它完全加载脚本和所有内容,javascript,ajax,jquery,Javascript,Ajax,Jquery,我有一个网站,将页面拉入动态界面。目前,主页要求外部页面所需的任何javascript都与主页一起加载。外部页面拥有的大多数javascript都是在页面被拉入时构建的对象,但首先会导致问题 由于某些原因,我有点难以解释,所以这里有一个简单的过程介绍 1.请求将页面拉入 2.根据传递给函数的变量创建一个特定对象,该对象将与来自页面的物理html相关联(这是外部Javascript) 3.将页面加载到对象框架中 此流要求将外部javascript附加到主页面,而不是被拉入的页面 我想切换第2步和第
由于页面的动态特性,我们不使用IFRAME,它们会导致模块的移动出现问题。如果您使用的是IFRAME,那么我认为您正在更改它的src属性。要在iframe加载完成时获取警报,应在iframe内的页面上包含脚本:
<script>
$(window).load(function() {
alert("All Done");
});
</script>
$(窗口)。加载(函数(){
警报(“全部完成”);
});
如果您只是通过AJAX请求页面的字符串版本并填充div,那么您需要一些额外的JavaScript来检测这些动态加载的脚本文件何时完成下载到客户端
我将访问此网站,让您开始。Nick和Mic的解决方案的组合 在IFRAME页面中,您需要一种方法来确定内容何时完成加载或准备就绪,然后通知主页:
<script>
$(function() {
parent.frameReady();
});
</script>
$(函数(){
parent.frameReady();
});
在主页面中,您可以从iFrame在钩子中编码:
<script>
function frameReady() {
// attach custom js to iframe here
}
</script>
函数frameReady(){
//在此处将自定义js附加到iframe
}
是使用脚本将外部js嵌入到页面中,还是使用内联js(即
vs一些js
)您能否提供一些实现的详细信息,特别是如何将这些外部页面拉入以及拉入到什么程度?是iframe吗?您是否控制外部页面标记?您是否确实知道如果没有外部页面,外部页面会是什么样子,或者它们可能是任何HTML文档?您是否尝试使用IFRAME加载页面,并为其设置onload
事件,以触发导入到父页面?