• $(document).ready()和window.onload之间的差异


    最近使用$(document).ready(function(){})遇到一个问题:加载页面后发送数据请求后台,得到的数据不对,后发现请求后台时,发送的数据为空,没有获取到值导致的。------改成window.onload = function(){}或者$(window).load(function(){})就可以了。现总结一下这一块的知识点。

    如何选择$(document).ready()和window.onload请结合实际情况进行判断。

    $(document).ready()和window.onload之间的区别:

    1.执行时间

    window.onload = function(){}  -------- 页面上所有的元素(包括图片,文件)加载完成之后执行,jquery的写法是$(window).load(function(){})

    $(document).ready(function(){})  ------- 页面上DOM结构绘制完成之后执行,可以简写成$(function(){})。

    页面会先执行$(document).ready(),然后执行window.onload。

    2.执行次数

    window.onload = function(){} ------ 只执行一次,如果定义多个时,只会执行最后一个定义的方法;如果想执行多个方法,可以使用$(window).load(function(){}) (会按照定义顺序执行)

    $(document).ready(function(){}) ---- 可以执行多次,页面编写多个$(document).ready()方法时,按照定义顺序依次执行

    <script>
    window.onload = function(){
       alert("onload11");
    }
    window.onload = function(){
       alert("onload22");
    }
    $(window).load(function() {
       alert("load11");
    });
    $(window).load(function() {
       alert("load22");
    });
    $(document).ready(function() {
       alert("ready22");
    }); 
    $(document).ready(function() {
       alert("ready11");
    });
    </script>

    弹出的顺序为   ready22  ----->  ready11  ----->  onload22  ----->  load11 ----->  load22

  • 相关阅读:
    10丨应该如何理解请求方法?
    采用镜像的方法安装python第三方库
    09丨HTTP报文是什么样子的?
    Fiddler——Https抓包(十二)
    三基础篇(7讲)08丨键入网址再按下回车,后面究竟发生了什么?
    fiddler-弱网测试(十一)
    python中a+=a与a=a+a的区别
    07 | 自己动手,搭建HTTP实验环境
    Fiddler——断点应用(十)
    【HGOI】物品选取
  • 原文地址:https://www.cnblogs.com/wjmm/p/8073937.html
Copyright © 2020-2023  润新知