为了账号安全,请及时绑定邮箱和手机立即绑定

没有jQuery的$(document).ready等价

没有jQuery的$(document).ready等价

精慕HU 2019-05-24 15:34:11
没有jQuery的$(document).ready等价我有一个使用的脚本$(document).ready,但它不使用jQuery中的任何其他内容。我想通过删除jQuery依赖项来减轻它。如何在$(document).ready不使用jQuery的情况下实现自己的功能?我知道使用window.onload不会是相同的,因为window.onload在加载了所有图像,帧等之后的火灾。
查看完整描述

4 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

三种选择:

  1. 如果script是正文的最后一个标记,那么DOM将在脚本标记执行之前就绪

  2. 当DOM准备就绪时,“readyState”将变为“complete”

  3. 将所有内容放在“DOMContentLoaded”事件侦听器下

的onreadystatechange

  document.onreadystatechange = function () {
     if (document.readyState == "complete") {
     // document is ready. Do your stuff here
   }
 }

资料来源:MDN

DOMContentLoaded

document.addEventListener('DOMContentLoaded', function() {
   console.log('document is ready. I can sleep now');});

关注石器时代的浏览器: 转到jQuery源代码并使用该ready函数。在这种情况下,你没有解析+执行整个库,你只做了很小的一部分。


查看完整回答
反对 回复 2019-05-24
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

在结束标记之前放置您的<script>/*JavaScript code*/</script>权利。 </body>

不可否认,这可能不适合每个人的目的,因为它需要更改HTML文件,而不是仅仅在JavaScript文件中执行某些操作document.ready,但仍然......


查看完整回答
反对 回复 2019-05-24
  • 4 回答
  • 0 关注
  • 943 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信