执行 Js 代码,直到文档准备就绪



文档准备就绪之前继续执行JS代码(在m情况下为每100毫秒)的最佳方法是什么?

setInterval(function() { 
   xajax_updateLoader();
}, 100);

一个文档已准备就绪。执行应停止。

var updateInterval;
$(function(){
 updateInterval= setInterval(function() { 
   xajax_updateLoader();
}, 100);
});
$(windows).load(function(){
    clearInterval(updateInterval)
});
var interval = setInterval(function() { ... }, 100);
window.onload = function() { clearInterval(interval); }

这将清除加载事件的间隔。

var handle = setInterval(function() { 
   xajax_updateLoader();
   if (jQuery.isReady) {
       //DOM is ready
       clearInterval(handle);
   }
}, 100);

像这样

domReady = false;
var ctx = setInterval(function() {
 if (domReady === true)
 {
  clearInterval(ctx);
 }
 // your code here
}, 100);
if (typeof document.addEventListener !== 'undefined') // chrome / safari / firefox
{
 document.addEventListener("DOMContentLoaded", function(){
  domReady = true;
  document.removeEventListener('DOMContentLoaded');
 }, false);
}
else if (typeof document.attachEvent !== 'undefined') // IE
{
 document.attachEvent("onreadystatechange", function(){
  if ( document.readyState === "complete" )
  {
   document.detachEvent( "onreadystatechange", arguments.callee );
   domReady = true;
  }
 });
}

使用 clearInterval()

var interval = setInterval(function() { ... }, 100);
$(document).ready(function(){
 clearInterval(interval);
});

最新更新