基于javascript原生判断DOM是否加载完毕


Posted in Javascript onOctober 14, 2020

readyState

document.readyState 返回当前文档的状态,属性如下:

  • uninitialized 还未开始加载
  • loading 加载中
  • interactive 已加载,文档与用户可以开始交互
  • complete 加载完成

DOMContentLoaded

当 DOMContentLoaded事件触发时,仅当DOM加载完成,不包括样式表,图片,flash

onload

当 onload 事件触发时,页面上所有的DOM,样式表,脚本,图片,flash都已经加载完成了

根据执行时DOM是否已经装载完毕来决定是对回调函数进行同步调用还是异步调用。具体代码如下:

function onReady(fn){
  var readyState = document.readyState;
  if(readyState === 'interactive' || readyState === 'complete') {
  fn()
 }else{
   window.addEventListener("DOMContentLoaded",fn);
  }

}

onReady(function(){
 console.log('DOM fully loaded and parsed ');
 })

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
分享一个用Mootools写的鼠标滑过进度条改变进度值的实现代码
Dec 12 Javascript
jquery struts 验证唯一标识(公用方法)
Mar 27 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
Jun 05 Javascript
利用ajaxfileupload插件实现文件上传无刷新的具体方法
Jun 08 Javascript
node.js中的console用法总结
Dec 15 Javascript
解决ueditor jquery javascript 取值问题
Dec 30 Javascript
基于jQuery实现网页打印功能
Dec 01 Javascript
JS图片压缩(pc端和移动端都适用)
Jan 12 Javascript
Vue2.0基于vue-cli+webpack同级组件之间的通信教程(推荐)
Sep 14 Javascript
vue获取当前激活路由的方法
Mar 17 Javascript
详解如何提升JSON.stringify()的性能
Jun 12 Javascript
VUEX 数据持久化,刷新后重新获取的例子
Nov 12 Javascript
JavaScript常用进制转换及位运算实例解析
Oct 14 #Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
Oct 14 #Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
Oct 13 #Javascript
原生JS实现相邻月份日历
Oct 13 #Javascript
jquery简易手风琴插件的封装
Oct 13 #jQuery
原生js实现照片墙效果
Oct 13 #Javascript
js轮播图之旋转木马效果
Oct 13 #Javascript
You might like
一些使用频率比较高的php函数
2008/10/03 PHP
php park、unpark、ord 函数使用方法(二进制流接口应用实例)
2010/10/19 PHP
如何利用http协议发布博客园博文评论
2015/08/03 PHP
常见PHP数据库解决方案分析介绍
2015/09/24 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
2017/02/04 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
node.js中的fs.ftruncate方法使用说明
2014/12/15 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
jQuery实现表格行上移下移和置顶的方法
2015/05/22 Javascript
深入理解JavaScript编程中的原型概念
2015/06/25 Javascript
jQuery实现的图文高亮滚动切换特效实例
2015/08/10 Javascript
js中不同的height, top的区别对比
2015/09/24 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
几句话带你理解JS中的this、闭包、原型链
2016/09/26 Javascript
详解Vue源码学习之callHook钩子函数
2018/07/25 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
python的Template使用指南
2014/09/11 Python
在cmd命令行里进入和退出Python程序的方法
2018/05/12 Python
手动安装python3.6的操作过程详解
2020/01/13 Python
小 200 行 Python 代码制作一个换脸程序
2020/05/12 Python
python实现数字炸弹游戏程序
2020/07/17 Python
python中_del_还原数据的方法
2020/12/09 Python
台湾租车首选品牌:IWS艾维士租车
2019/05/03 全球购物
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
Moda Operandi官网:美国奢侈品电商,海淘秀场T台同款
2020/05/26 全球购物
创业计划书怎样才能打动风投
2014/01/01 职场文书
工地安全标语
2014/06/07 职场文书
英语课前三分钟演讲稿
2014/08/19 职场文书
纪检干部先进事迹材料
2014/08/23 职场文书
安全在我心中演讲稿
2014/09/01 职场文书
小学教师师德师风个人整改措施
2014/09/18 职场文书
检讨书大全
2015/01/27 职场文书
加班费申请报告
2015/05/15 职场文书
解除处分决定书
2015/06/25 职场文书
2016应届毕业生实习心得体会
2015/10/09 职场文书