如何将window.onload替换为domReady实现DOM加载?

更新于
2026-09-29 09:03:45
1阅读来源:SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计202个文字,预计阅读时间需要1分钟。

如何将window.onload替换为domReady实现DOM加载?

1. myReady 函数实现javascriptfunction myReady(fn) { // 对现代浏览器,对DOMContentLoaded事件的处理}

2. 比较 domReady 与 window.onload 的速度plaintextdomReady 方法比 window.onload 速度更快。

如何将window.onload替换为domReady实现DOM加载?

1、myReady(function(){执行代码});
2、window.onload=function(){执行代码};
domReady方法比window.onload速度更快。

1.[代码][JavaScript]代码

function myReady(fn){ //对于现代浏览器,对DOMContentLoaded事件的处理采用标准的事件绑定方式 if ( document.addEventListener ) { document.addEventListener("DOMContentLoaded", fn, false); } else { IEContentLoaded(fn); } //IE模拟DOMContentLoaded function IEContentLoaded (fn) { var d = window.document; var done = false; //只执行一次用户的回调函数init() var init = function () { if (!done) { done = true; fn(); } }; (function () { try { // DOM树未创建完之前调用doScroll会抛出错误 d.documentElement.doScroll('left'); } catch (e) { //延迟再试一次~ setTimeout(arguments.callee, 50); return; } // 没有错误就表示DOM树创建完毕,然后立马执行用户回调 init(); })(); //监听document的加载状态 d.onreadystatechange = function() { // 如果用户是在domReady之后绑定的函数,就立马执行 if (d.readyState == 'complete') { d.onreadystatechange = null; init(); } } } }

本文共计202个文字,预计阅读时间需要1分钟。

如何将window.onload替换为domReady实现DOM加载?

1. myReady 函数实现javascriptfunction myReady(fn) { // 对现代浏览器,对DOMContentLoaded事件的处理}

2. 比较 domReady 与 window.onload 的速度plaintextdomReady 方法比 window.onload 速度更快。

如何将window.onload替换为domReady实现DOM加载?

1、myReady(function(){执行代码});
2、window.onload=function(){执行代码};
domReady方法比window.onload速度更快。

1.[代码][JavaScript]代码

function myReady(fn){ //对于现代浏览器,对DOMContentLoaded事件的处理采用标准的事件绑定方式 if ( document.addEventListener ) { document.addEventListener("DOMContentLoaded", fn, false); } else { IEContentLoaded(fn); } //IE模拟DOMContentLoaded function IEContentLoaded (fn) { var d = window.document; var done = false; //只执行一次用户的回调函数init() var init = function () { if (!done) { done = true; fn(); } }; (function () { try { // DOM树未创建完之前调用doScroll会抛出错误 d.documentElement.doScroll('left'); } catch (e) { //延迟再试一次~ setTimeout(arguments.callee, 50); return; } // 没有错误就表示DOM树创建完毕,然后立马执行用户回调 init(); })(); //监听document的加载状态 d.onreadystatechange = function() { // 如果用户是在domReady之后绑定的函数,就立马执行 if (d.readyState == 'complete') { d.onreadystatechange = null; init(); } } } }