码迷,mamicode.com
首页 > Web开发 > 详细

工作中经常会碰到的一些js兼容问题

时间:2019-08-31 15:30:17      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:cancel   dom2   src   对象   detach   事件对象   code   dde   opd   

  1.获取滚动距离

        document.documentElement.scrollTop()
        document.body.scrollTop()//IE                

  2.获取非行间样式

        function getStyle(ele,attr){
		    if(ele.currentStyle){
		        return ele.currentStyle[attr];
		    }else{
		        return getComputedStyle(ele,false)[attr];
		    }
		}    

  3.事件源

  target=e.target||e.srcElement

  4.事件中事件对象的获取

  var e = eve || window.event;

  5.阻止事件冒泡

            function stopBubble(e){
		    if(e.stopPropagation){
		        e.stopPropagation();
		    }else{
		        e.cancelBubble = true;
		    }
		}    

  6.阻止默认事件

                function stopDefault(e){
		    if(e.preventDefault){
		        e.preventDefault()
		    }else{
		        e.returnValue = false;
		    }
		}

  7.获取按下的键盘码

    var e=e.keyCode  ||  e.which 

  8.监听式绑定(DOM2级事件绑定)

  function addEvent(ele,type,cb){
        if(ele.addEventListener){
            ele.addEventListener(type,cb)
        }else if(ele.attachEvent){
            ele.attachEvent("on"+type,cb)
        }else{
            ele["on"+type] = cb;
        }
    }

  9.通过事件句柄找到原来的事件处理函数,删除

  function removeEvent(ele,type,cb){
        if(ele.removeEventListener){
            ele.removeEventListener(type,cb)
        }else if(ele.detachEvent){
            ele.detachEvent("on"+type,cb)
        }else{
            ele["on"+type] = null;
        }
    }

  

工作中经常会碰到的一些js兼容问题

标签:cancel   dom2   src   对象   detach   事件对象   code   dde   opd   

原文地址:https://www.cnblogs.com/hupeng1996/p/11438871.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!