Javascript 延迟加载脚本加载和/或执行
在我的基于ajax的应用程序中,特别是GWT应用程序中,它有Javascript 延迟加载脚本加载和/或执行,javascript,jquery,html,Javascript,Jquery,Html,在我的基于ajax的应用程序中,特别是GWT应用程序中,它有divs,其中包含隐藏在索引HTML上的脚本。这是在应用程序完全加载时重新定位的广告。这种方法的问题在于,在应用程序完全加载之前,首先获取广告脚本,从而导致应用程序延迟或加载缓慢 有没有办法延迟加载那些div中的脚本,以便应用程序可以首先优雅地加载,并且在完成页面加载之前,用户体验不会受到脚本获取及其执行的影响 e、 g ... 在我的应用程序中,有相当多的div需要延迟。jQuery有没有办法使div还没有加载,并且在时间准备好时
div
s,其中包含隐藏在索引HTML上的脚本。这是在应用程序完全加载时重新定位的广告。这种方法的问题在于,在应用程序完全加载之前,首先获取广告脚本,从而导致应用程序延迟或加载缓慢
有没有办法延迟加载那些div中的脚本,以便应用程序可以首先优雅地加载,并且在完成页面加载之前,用户体验不会受到脚本获取及其执行的影响
e、 g
...
在我的应用程序中,有相当多的div需要延迟。jQuery有没有办法使div还没有加载,并且在时间准备好时通过编程触发它 您可以使用jQuery-将.js文件中的所有内容都放到这个函数中。像这样:
$(document).ready(function() {
//code here
});
Function.ready()等待完整的DOM树加载和创建。正如CorwinCZ提到的,您可以使用它。和用于使用GET HTTP请求从服务器加载JavaScript文件,然后执行它
$(function() {
$.getScript( "gwtapp.nocache.js" )
.done(function( script, textStatus ) {
console.log( textStatus );
})
.fail(function( jqxhr, settings, exception ) {
console.log( "ERROR" );
});
});
您可以使用一些简短的javascript来监听
body.onload
事件。触发事件时,只需将脚本标记动态添加到dom中。另一种不同的方法是将包含的脚本封装在函数中,并在触发onload事件时调用它。这样,可以在主体完成加载后直接执行脚本,而不必首先从服务器获取实际脚本。
$(function() {
$.getScript( "gwtapp.nocache.js" )
.done(function( script, textStatus ) {
console.log( textStatus );
})
.fail(function( jqxhr, settings, exception ) {
console.log( "ERROR" );
});
});