js window 定时器 event

目录

01 创建元素的方式

02 BOM概述

03 window

04定时器

05 location对象的使用

07 js特效

08 offset系列相关属性

09 scroll 相关属性

10 client 相关属性

11 window 相关的事件

12 event 相关的属性


01 创建元素的方式

创建元素的三种方式:

        1.innerHTML创建元素

<div id="inner"></div>
<script>
    var inner=document.querySelector('#inner')
    inner.innerHTML='<a href="#">百度</a>'
    for(var i=0;i<100;i++){
        inner.innerHTML+='<a href="#">百度</a>'
    }
</script>

        2.使用数组来创建元素

<script>
    var arr=[];
    for(var i=0;i<100;i++){
        arr.push('<a href="#">百度</a>')
    }
    inner.innerHTML=arr.join('')
</script>

        3.document.createELement 创建元素

<div id="create"></div>
<script>
    var create=document.querySelector('#create')
    for(var i=0;i<100;i++){
        var a=document.createElement('a');
        create.append(a)
    }
</script>

02 BOM概述

        js三大核心  :   js基础语法        DOM        BOM

        BOM(Brower Object Model)

                js给我们内置了一些能够操作浏览器本身相关的一些对象

        BOM包含DOM

        DOM 最顶级的对象: document

        BOM 最顶级的对象 : window

03 window

        alert('123') 

        弹窗方法都是window调用的

         所有使用window调用的属性和方法 都可以省略

        window.open 打开新窗口的方法  (了解)

        

04定时器

        定时器分为一次性定时器和永久定时器

               1. 永久定时器:

                var timer=setInterval(function(){

                        console.log('111')

                })

                2.一次性定时器:

                var timer=setTimeout(function(){

                        console.log('111')

                })

        停止定时器:

                停止永久定时器 : clearInterval(clearInterval方法的返回值)

                停止一次性定时器 : clearTimeout(setTimeout方法的返回值)

05 location对象的使用

        location对象是封装和地址相关的一些数据

                console.log(location);

               console.log("地址栏全信息:",location.href)

                console.log("协议:",location.protocol);

                console.log("主机:",location.hostname);

                console.log("主机+端口:",location.host);

                console.log("地址路径部分:",location.pathname);

                console.log("地址的#号锚点部分:",location.hash);

                console.log("地址的参数部分:",location.search);

        location对象三个关于页面跳转的功能

                location.href='地址'

                location.assign('地址')

                location.replace('地址')

        注意:

                href 和assing功能一模一样

                跳转后把页面存为历史记录 跳转过去之后可以回退回来

                replace跳转会把当前页面销毁 跳转到新页面去 无法回退

06 history对象的使用

        history对象 专门操作历史记录相关的数据

        history.go(number)

                go(1) 前进一个记录

                go(-1) 后退一个记录

                go(0) 刷新 和 location.reload( ) 效果一样

07 js特效

        js中dom节点和动画相关的一些属性放到一起抽离出来 做成js动画的效果 就是js特效

        js特效相关的数据大致分为:

                offset方向 

                scroll方向

                client方向

08 offset系列相关属性

        offset方向的五大属性:

                1.offsetWidth   offsetHeight 返回的结果是number类型

                获取的是盒子自身的宽高+padding+border

                其实获取的就是最终渲染的盒子的大小 不包含margin

                2.offsetLeft   offsetTop    

                获取当前盒子距离最近的有定位的父盒子左上角的距离

                如果父盒子没有定位则距离body的距离

                以上四个属性都是只读的 无法复制 只能获取  返回的是数字类型 所以比较好用

               3. offsetParent

                获取最近的有定位的父盒子

                如果父盒子没有定位则返回body

  

09 scroll 相关属性

        scroll相关属性:

                1.scrollWidth  scrollHeight 

                内容不超出盒子宽高的时候 返回的是盒子自身的高度+padding

                如果内容超出了盒子的宽高  则返回的是内容的宽高

                2.scrollLeft  scrollTop 

                html对象调用 返回的是可滚动的浏览器页面被卷曲的头部和左侧的距离

                以上两个属性不但能获取还能设置浏览器卷曲多少

        特殊元素的获取方式:

                html对象的获取: document.documentELement

                body对象的获取: document.body

                head对象的获取: document.head

                title对象的获取: document.title

        页面滚动事件:

                window.οnscrοll=function(){ }

                或者

                window.addEventListener('scroll', function(){})

                只要页面滚动1px 就会触发一次这个事件

10 client 相关属性

        1.clientWidth/clientHeight

        是html对象调用 获取浏览器可视区域宽度

        可以根据浏览器的可视区域的宽高实现页面响应式布局

        2.clientLeft/clientTop(获取盒子左边框和上边框的宽度  没用) 

       

        3.获取浏览器可视化区域大小的其他方式(推荐使用)

        window.innerWidth / window.innerHeight

11 window 相关的事件

        window.onscorll 页面滚动事件

        window.onload 页面加载完毕事件

                所有页面的dom节点加载完毕 页面所有的图片加载完毕 后才去执行的事件

        window.onresize 页面大小改变事件

12 event 相关的属性

        鼠标到body的距离(pageX/Y)   e.pageX    e.pageY

        鼠标到屏幕的距离(screenX/Y)  e.screenX   e.screenY

        鼠标到可视区域的距离(clientX/Y)  e.clientX  e.clientY

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值