zoukankan      html  css  js  c++  java
  • js中一些兼容问题及写法

    由于IE浏览器与其他普通浏览器的不同,所以有了一些不兼容的问题,下面是一些常见的兼容问题及解决兼容问题的写法:

    一般的解决兼容都是封装成一个函数:

    获取非行内样式时:

     1 //普通浏览器
     2 getComputedStyle(ele,false)[attr];
     3 //IE浏览器
     4 ele.currentStyle[attr];
     5 //兼容:
     6 function getStyle(ele,attr){
     7      if(ele.currentStyle){
     8         return ele.currentStyle[attr];
     9     }else{
    10         return getComputedStyle(ele,false)[attr];        
    11     }    
    12 }

    获取事件对象时:

    1 //普通浏览器
    2     //事件处理函数的第一个参数;
    3 //IE浏览器
    4     //通过window找event属性;
    5 //兼容:
    6 ele.onclick = function(eve){
    7   var e = eve || window.event;  
    8 }

    获取事件对象目标时:

    1 //普通浏览器:
    2     //e.target;
    3 //IE浏览器(火狐浏览器):
    4     //e.srcElement;
    5 //兼容:
    6 var e = eve || window.event;
    7 var target = e.target || e.srcElement;

    阻止事件冒泡时:

     1 //普通浏览器:
     2     //e.stopPropagation;
     3 //IE浏览器:
     4     //e.cancelBubble=true;
     5 //兼容:
     6 function stopBubble(e){
     7   if(e.stopPropagation){
     8         e.stoPropagation(); 
     9     }else{
    10         e.cancelBubble=true;
    11   }  
    12 }

    阻止默认事件时:

     1 //普通浏览器:
     2     //e.preventDefault;
     3 //IE浏览器:
     4     //e.returnValue=false;
     5 //兼容:
     6 function stopDefault(){
     7   if(e.preventDefault) {
     8     e.preventDefault();
     9   } else{
    10        e.returnValue=false;
    11   }
    12 }

    监听式绑定事件时:

     1 //普通浏览器:
     2     //ele.addEventListener;
     3 //IE浏览器: 
     4     //ele.attachEvent;
     5 //兼容:
     6 function stopDefault(ele,type,cb){
     7   if(ele.addEventListener;) {
     8      ele.addEventListener(type,cb,false);
     9    } else{
    10        ele.attachEvent("on"+type,cb);
    11    }
    12 }

    删除监听式绑定事件时:

     1 //普通浏览器:
     2     //ele.removeEventListener;
     3 //IE浏览器: 
     4     //ele.detachEvent;
     5 //兼容:
     6 function stopDefault(ele,type,cb){
     7   if(ele.removeEventListener;) {
     8     ele.removeEventListener(type,cb,false);
     9   } else{
    10        ele.detachEvent("on"+type,cb);
    11   }
    12 }
  • 相关阅读:
    Java实现 蓝桥杯 算法训练 画图(暴力)
    Java实现 蓝桥杯 算法训练 画图(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 Cowboys
    Java实现 蓝桥杯 算法训练 Cowboys
    55. Jump Game
    54. Spiral Matrix
    50. Pow(x, n)
  • 原文地址:https://www.cnblogs.com/ssmin/p/12002190.html
Copyright © 2011-2022 走看看