2.js补充:BOM对象

一、页面加载事件:

       // 1、传统页面加载事件:只能写一个,有多个以最后一个为准
window.onload = function() { alert(11) }; // 2、监听加载:可以写多个 window.addEventListener('load', ()=> { alert(22) }); // 3、DOM加载完毕,不等图片、css、flash加载完等就可以执行 document.addEventListener('DOMContentLoaded', ()=> { alert(33) })

  

二、调整窗口大小事件:

①、只要窗口大小发生变化,就会触发这个事件。

②、经常和 Window.innerWidth/Height屏幕宽高搭配。

     window.onresize = function() {};

     window.addEventListener('resize', ()=> {})

  

三、定时器:

        // 1、setTimeout定时器
        // ①、定会器里面写函数。
        setTimeout(function() {
            console.log('timeout');
        }, 2000);

        // ②、定时器调用外部函数。
        function callBack() {
            console.log('BOOM');
        };
        setTimeout(callBack, 2000);
        
        // ③、为了便于区分,给定时器命名
        var time1 =  setTimeout(callBack, 2000);
        var time2 =  setTimeout(callBack, 3000);
    
// 2、清除setTimeout定时器:
clearTimeout(定时器名字)

// 1、setInterval()定时器:每隔一定时间,重复调用里面函数。
       setInterval(function() {
            console.log('timeout');
        }, 2000);
        // 2、清除setInterval()定时器:
       clearInterval(定时器名字)

  

四、this指向问题

①、一般情况下,this指向的是那个调用它的对象。

②、全局作用域、普通函数、定时器里面的this都指向window。

③、方法调用中,谁调用this就指向谁。

      btn.addEventlistner('click', function() {
            console.log(this); // 指向btn这个按钮对象
        })

  

五location对象:

1、对象属性:

①、location.href:获取/设置这个url。

②、location.search:返回参数。  ?username=Andy --> substr(1) :username=Andy -->split(‘=’):['username', 'Andy']

substr(‘截取起始位置’,‘截取几个字符’)

split(‘以什么分割’)

 

posted @ 2021-06-02 21:10  Y字仇杀队  阅读(27)  评论(0编辑  收藏  举报