web前端:JS---DOM---为元素绑定事件和解绑事件的兼容代码

    作者: jane_panyiyun更新于: 2020-03-21 21:07:19

    Web开发

      源代码作为软件的特殊部分,可能被包含在一个或多个文件中。一个程序不必用同一种格式的源代码书写。例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

      1.绑定事件的兼容

      functionaddEventListener(element,type,fn){

      if(element.addEventListener){

      element.addEventListener(type,fn,false);

      }elseif(element.attachEvent){

      element.attachEvent("on"+type,fn);

      }else{

      element["on"+type]=fn;

      }

      }

      2.解绑事件的兼容

      functionremoveEventListener(element,type,fnName){

      if(element.removeEventListener){

      element.removeEventListener(type,fnName,false);

      }elseif(element.detachEvent){

      element.detachEvent("on"+type,fnName);

      }else{

      element["on"+type]=null;

      }

      测试解绑时间的兼容:

      //解绑事件的兼容

      //为任意的一个元素,解绑对应的事件

      functionremoveEventListener(element,type,fnName){

      if(element.removeEventListener){

      element.removeEventListener(type,fnName,false);

      }elseif(element.detachEvent){

      element.detachEvent("on"+type,fnName);

      }else{

      element["on"+type]=null;

      }

      }

      functionf1(){

      console.log("测试兼容第一个");

      }

      functionf2(){

      console.log("测试兼容第二个");

      }

      addEventListener(my$("btn1"),"click",f1);

      addEventListener(my$("btn1"),"click",f2);

      my$("btn2").onclick=function(){

      removeEventListener(my$("btn1"),"click",f1);

      };

      虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。普遍规律是:越高级的语言,其执行效率越低。这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。

课课家教育

未登录