DOM2级事件兼容处理

137 阅读1分钟
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div id="box">点我</div>
<script>
    var box=document.getElementById('box');
    box.onclick=function(){
        e=e||window.event;
//        e.stopPropagation=e.stopPropagation||function(){
//            e.cancelBubble=true;
//            };
//        e.stopPropagation();
        //可以用三元
        e.stopPropagation?e.stopPropagation():e.cancelBubble=true;
//        e.preventDefault=e.preventDefault||function(){
//            e.returnValue=false;
//            };
//        e.preventDefault();
        //可以用三元
        e.preventDefault?e.preventDefault():e.returnValue=false;
        e.target=e.target||e.srcElement;
        //ie6以下采用document.body处理兼容,ie6以上的话,直接用document.documentElement获取就可以了
        e.pageX=e.pageX||e.clientX + document.documentElement.scrollLeft;
        e.pageY=e.pageY||e.clientY + document.documentElement.scrollTop;
    }
</script>
</body>
</html>