看不懂啊,对后续课程会不会有影响

看不懂啊,对后续课程会不会有影响

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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();
            }
        }
    }
}


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,是说的$(document).ready(function(){}) 和window.load的区别吗?参考如下

1.window.onload必须等到页面内(包括图片的)所有元素加载完才能执行

2.$(document).ready是DOM结构加载完毕后就会执行,不用等到页面中图片或其他外部文件都加载完毕。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

  • 迷失的小麦 提问者 #1
    那么在实际运用中差别不大吧?也就是说用哪个无所谓
    2019-12-08 16:09:38
好帮手慕夭夭 2019-12-08 19:03:19

同学你好,差别不大,就是老师上次说的区别。window.onload是原生js的语句,所以写原生js的时候,就使用window.onload。$(document).ready是jQuery中的用法,后面学到jQuery的时候用它。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~


好帮手慕码 2019-12-07 17:54:13

同学你好, 针对你的问题如下解答:

1、domReady.js是老师自己封装了一个myReady方法 ,myReady(function(){})就是myReady方法的使用。实现的效果实际上就是$(document).ready(function(){}) , 让DOM加载完后再去执行js代码 。

2、$(document).ready(function(){}) 是后面的jQuery课程知识 , 因为现在还没有学习到, 所以这里是老师为了方便课程讲解自己封装了一个类似的方法 ,里面的一些知识同学现在还没有学到过 。这个在实际开发中不用 , 不需要了解,不会对后期课程造成影响的,目前学习直接拿来用就行。等学习了后面的知识直接用$(document).ready(function(){}) 就行了。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • 提问者 迷失的小麦 #1
    功能上与onload有什么区别吗?还是说二者是完全等价的
    2019-12-08 10:13:04
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码