标签:语法 代码 队列 傻傻 UNC htm window 解析 log
在写前端的时候经常用到js或jquery语法,有时候傻傻分不清,现在将学习过程中遇到的总结一下。
JQuery 的代码我们通常会包裹在一个$(function(){})
函数中,jq 的$(function(){})
也就是$(document).ready(function(){})
的简写,与之对应的原生 js 的window.onload
事件,这俩者之间到底有什么区别呢?
$(function () { console.log("ready执行"); }); $(function() { console.log("ready1执行"); }); window.onload = function () { console.log(‘load执行‘); }; window.onload = function () { console.log(‘load1执行‘); }
执行结果:
ready执行 ready1执行 load1执行
这里可以看出两点不同:
1.$(function(){})
不会被覆盖,而window.onload
会被覆盖,个人感觉$(function(){})
不会被覆盖的原因是将其放入到了一个队列中,在对应时机一次出队。
2. $(function(){})
在window.onload
执行前执行的,$(function(){})
类似于原生 js 中的DOMContentLoaded
事件,在 DOM 加载完毕后,页面全部内容(如图片等)完全加载完毕前被执行。而window.onload
会在页面资源全部加载完毕后才会执行。
DOM 文档加载步骤:
$(document).on和$('#idname').on和$(function(){ })区别
标签:语法 代码 队列 傻傻 UNC htm window 解析 log
原文地址:https://www.cnblogs.com/liudinglong/p/14397661.html