zoukankan      html  css  js  c++  java
  • chrome-Firefox-IE浏览器兼容总结

    作为一名WEB前端程序员,相信每个人对浏览器的兼容都"情有独钟",下面就一些常用的浏览器的兼容列举一二。

    一、块级元素(block)一般不转化为inline-block,其实是因为浏览器的兼容问题,IE8以下的浏览器不     支持块级元素转化为行内块元素(可以使用浮动)。

    二.获取元素样式:
    1.oDiv.style.background:
      获取到的是行内样式的属性
    2.获取显示的样式:
      标准浏览器(IE9以下是不支持):
        getComputedStyle(标签元素,false).属性名
      IE9以下获取内联样式:
        标签元素.currentStyle.属性名

      做浏览器的兼容:
      if (oDiv.currentStyle) {
        //在IE9以下
        oDiv.currentStyle.width;
      } else {
        //标准浏览器
        getComputedStyle(oDiv,false).width;
      }

    3.oDiv.offset.width=100;注意:不带'px',上面两个获取的带'px'

    三.获取兄弟节点
      nextSibling,previousSibling
      在高级和IE9以上的浏览器里面,兄弟节点会获取到空格,在IE8以下,才能获取到我们想要的元素节点

      previousElementSibling,nextElementSibling
      在高级和IE9以上的浏览器里面,兄弟节点会获取到对应的元素,在IE8以下,不能获取到我们想要的元素节点

      var oP1 = oP.previousElementSibling || oP.previousSibling;

    四.获取第一个或最后的兄弟节点
      获取节点,获取第一个节点,获取最后一个节点
      父节点.firstChild;
      父节点.lastChild;
      1.兼容所有的浏览器
        oUl.firstElementChild || oUl.firstChild
      2.兼容所有的浏览器
        oUl.lastElementChild || oUl.lastChild

    五.向上滚动的距离:
      1.在谷歌里面:
        document.body.scrollTop
      2.在火狐、IE里面:
        document.documentElement.scrollTop
      3.兼容所有浏览器:
        var scrollTop=document.documentElement.scrollTop || document.body.scrollTop;
        var scrollLeft=document.documentElement.scrollLeft || document.body.scrollLeft;

    六、事件绑定的兼容
      if (obj.addEventListener) {
        //在高级浏览器
        obj.addEventListener(type,fn,false);
      } else {
        obj.attachEvent('on'+type,fn)
      }
      事件移除的兼容
      if (obj.removeEventListener) {
        obj.removeEventListener(type,fn,false);
      } else {
        obj.detachEvent('on'+type,fn);
      }

    七、阻止默认事件的兼容
      function(evt) {
        var oEvent = evt || event;
        oEvent.preventDefault && oEvent.preventDefault();
        return false;
      }

    八、事件委托兼容
      srcElement: 获取到事件真正作用的那个元素 (不兼容Firefox,专门用来做IE浏览器的兼容)
      target: 获取到事件真正作用的那个元素 (兼容高级浏览器)
      var oLi = oEvent.srcElement || oEvent.target;

      addEvent('oUl','click',function(evt){

        var oEvent=evt||event;

        var oLi=oEvent.srcElement||oEvent.target;

      })

  • 相关阅读:
    行转列函数listagg() WITHIN GROUP ()
    位图索引
    windows 杀掉进程
    vue 实践(过滤器)
    vue 总结
    vue v-show v-if 的使用
    vue v-for 绑定数据
    vue v-model实现数据的双向绑定
    vue .stop .self .capture .prevent 阻止冒泡
    vue v-on v-text 的运用
  • 原文地址:https://www.cnblogs.com/barry1102/p/barry1102.html
Copyright © 2011-2022 走看看