• JavaScript-事件处理程序


    DOM事件流:

      1、事件冒泡  2、事件捕获

    DOM2事件流:

      1、事件捕获阶段

      2、处于目标阶段

      3、事件冒泡阶段

    DOM3事件

    事件处理程序:

      1、HTML事件处理程序:

      例一:<input type="button" value="Click Me" onclick="alert('Clicked')" />

      例二:<input type="button" value="Click Me" onclick="showMessage()" />

      缺点:(1)存在时差问题,页面未解析事件处理函数之前触发事件会发生报错

            (2)扩展事件处理程序的作用域链在不同的浏览器中会导致不同的结果

      2、DOM0级事件处理程序:

      例一:var btn=document.getElementById("myBtn");

         btn.onclick=function(){

            alert("Clicked");

          };

      事件处理程序是在元素的作用域中运行,事件处理程序会在事件流的冒泡阶段被处理。

      3、DOM2级事件处理程序

      例一:var btn=document.getElementById("myBtn");

         btn.addEventListener("click",function(){

          alert(this.id);

          },false);//此方式无法通过removeEventListener()来移除事件;

      例二:var btn=document.getElementById("myBtn");

         var handler=function(){

          alert(this.id);

          };

         btn.addEventListener("click",handler,false);//先添加先执行

         btn.removeEventListener("click",handler,false);//参数需与添加函数参数一致;

       4、IE事件处理程序:

      例一:var btn=document.getElementById("myBtn");

         btn.attachEvent("onclick",function(){

          alert("Clicked");

          });//事件处理程序在全局作用域内运行,this等于window;

           //先添加后执行;

           //此方式无法通过detachEvent()来移除事件;

      例二:var btn=document.getElementById("myBtn");

         var handler=function(){

          alert(this.id);

          };

         btn.attachEvent("onclick",handler);

         btn.detachEvent("onclick",handler);

  • 相关阅读:
    2020-08-25日报博客
    2020-08-24日报博客
    2020-08-23日报博客
    Pytorch-区分nn.BCELoss()、nn.BCEWithLogitsLoss()和nn.CrossEntropyLoss() 的用法
    Pytorch-基于BiLSTM+CRF实现中文分词
    Pytorch-手动实现Bert的训练过程(简写版)
    Pytorch-图像分类和CNN模型的迁移学习
    Pytorch trick集锦
    Pytorch-seq2seq机器翻译模型(不含attention和含attention两个版本)
    Pytorch-GAN
  • 原文地址:https://www.cnblogs.com/brandbao-blog/p/12236199.html
Copyright © 2020-2023  润新知