Jquery – 如果页面已加载

有没有什么技巧如何在javascript中启动一个函数,它在页面完全加载时启动?

如果您的意思是HTML文档已加载,请使用ready事件:

 $(document).ready(function(){ ... }); 

或简写:

 $(function(){ ... }); 

如果您的意思是包含所有样式表,脚本,图像和诸如此类的页面已完成加载,请使用load事件:

 $(window).load(function(){ ... }); 
 $( window ).bind( 'load', function() { //your code in here } ); 

请查看: http : //api.jquery.com/ready/

  jQuery(document).ready(function($) { // Code using $ as usual goes here. }); 

这取决于您对“加载”的定义。 在jQuery文档中查看这两个函数:

  • 加载()
  • 准备()

具体来说,您可以在ready()函数的doc页面中看到差异。

虽然JavaScript在呈现页面时提供了用于执行代码的加载事件,但在完全接收到所有资产(如图像)之前,不会触发此事件。 在大多数情况下,只要完全构造DOM层次结构,就可以运行脚本。 传递给.ready()的处理程序保证在DOM准备好后执行,因此这通常是附加所有其他事件处理程序并运行其他jQuery代码的最佳位置。 使用依赖于CSS样式属性值的脚本时,在引用脚本之前引用外部样式表或嵌入样式元素很重要。

如果代码依赖于加载的资源(例如,如果需要图像的维度),则应将代码放在load事件的处理程序中。

当DOM准备就绪时,使用.ready事件。

 jQuery(document).ready(function(){ //content }); 

当页面加载图像时,你也使用.load事件。

 jQuery(window).load(function(){ //content }); 

尝试将加载事件回调绑定到页面上的最后一个图像。

一旦文档加载完全使用就调用一个方法

 $(document).ready(function(){ ... }); 

否则,如果通过ajax调用使用加载页面

 $('#containerdiv').load('samplepage.jsp', function() { alert("ajax load complet.."); }); 

如果你真的希望你的Javascript在所有HTML加载的“一切”后运行,你可以使用

 window.onload = function(){ // Do stuff } 

您正在寻找窗口加载事件。

在jQuery中,您附加load事件如下:

 $(document).ready(function() { $(window).load(function() { } } 

请注意,您需要将其放在文档中,以备某些浏览器IE8 OTTOMH使用。