05-网页特效篇

Web API -DAY05

通过on方式注册事件(DOML0)

语法:

事件源.on事件类型= function(){}

代码演示:

<body>
   <input type="button" value="按钮">
   <script>
       let btn = document.querySelector('input')
       btn.onclick = function () {
           this.style.color = 'red'
      }
   </script>
</body>

on方式注册事件和 addEventListener 注册事件的区别

  1. on方式注册事件(DOML0)

  2. addEventListener 注册事件(DOML2)

  3. 备注:标签行内js代码的写法叫 DOML1

  4. DOML0方式注册的事件,同一种事件只能注册一次(后面的事件会将前面的覆盖掉)

    1. 本质上DMOL0是在给对象赋值,类似 obj.uname=‘张三' ,只能保存一个值。

    05-网页特效篇

     

  5. DOML2方式注册的时候.同一种事件可以注册多次

    1. 本质上相当于调用函数执行代码,函数可以被调用多次调用函数,类似:obj.eat()

    05-网页特效篇

 

 

移除事件

事件源.on事件类型= null

如果元素是通过DOML0方式注册的事件,那么移除事件的时候通过:

事件源.on事件类型= null; 移除事件 (重新赋值,覆盖掉)

事件源.on事件类型= ' '; (也可以)

事件源.on事件类型= 0 ; (也可以)

05-网页特效篇

 

事件源.removeEventListener('事件类型',函数名);

如果元素注册事件通过DOML2方式注册的,那么移除事件的时候需要按照如下步骤:

  1. 如果确定要移除事件,则在注册事件的时俱,必须使用函数名方式注册。

  2. 通过 事件源.removeEventListener('事件类型',函数名); 移除

    05-网页特效篇

     

<body>
   <input type="button" value="按钮">
   <script>
       let btn=document.querySelector('button')
       function fn() {         //一个匿名函数
           console.log(123)
      }
       btn.addEventListener('click',fn);   //点击事件
       //移除事件
       btn.removeEventListener('click',fn)
   </script>
</body>

 

页面加载事件

场景

05-网页特效篇

 

页面加载语法

05-网页特效篇

 

代码演示

05-网页特效篇

 

原因

05-网页特效篇

 

练习.

<body>
   <script>
       window.onload = function () {
           let btn = document.querySelector('input')
           btn.onclick = function () {
               console.log(123)
          }
      }
   </script>
   <input type="button" value="按钮">
</body>

 

滚动事件

05-网页特效篇

 

代码演示

height:3000px

写法一

05-网页特效篇

05-网页特效篇

 

写法二

05-网页特效篇

 

 

通过js获取元素大小

通过div获取元素的宽度

05-网页特效篇

 

05-网页特效篇

 

 

上一篇:JQuery小案例-2021-11-12


下一篇:JS DOM编程复习笔记 - 事件初识(十二)