html内的Dom事件

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>表单标签</title>
  
</head>
<body>
    <div id="box">
    <input value="btn3" id="btn3" type="button">
        <a href="a0003.html" id="go">跳转</a>
    </div>
    <script>
        function showMe(event)
        {
            alert(event.target.nodeName);
            event.stopPropagation();//不会一直往上面冒泡了,特别有用;
        }
        function showBox()
        {
            alert("Box");
        }
        function stopGo(event)
        {   event.stopPropagation();
            event.preventDefault();
        }
        var q=document.getElementById("btn3");
        var q1=document.getElementById("box");
        var qa1=document.getElementById("go");
        //添加句柄
        var EventUtil={
            addHandler:function(element,type,handler){
                if(element.addEventListener){
                    element.addEventListener(type,handler,false);
                    
                    
                }else if(element.attachEvent){
                    element.attachEvent("on"+type,handler);
                    
                }else{
                    element['on'+type]=handler;
                    
                    
                    
                }
                
            },
        
        //删除句柄
             
            removeHandler:function(element,type,handler){
                if(element.removeEventListener){
                    element.removeEventListener(type,handler,false);
                    
                    
                }else if(element.attachEvent){
                    element.detachEvent("on"+type,handler);
                    
                }else{
                    element['on'+type]=null;
                    
                    
                    
                }
            
        },
          
            //获取事件
            getEvent:function(event){
                
                return event?event:window.event;
               
                
            },
            
            //阻止时间的默认行为
            preventDefault:function(event){
                if(event.preventDefault){//判断的时候不要加括号
                    
                    event.preventDefault();
                }else{
                    event.returnValue=false;
                    
                }
                
                
            },
            //停止冒泡事件
            stopPropagation:function(event)
            {
                if(event.stopPropagation)//判断的时候不要加括号
                    {
                        event.stopPropagation();
                }else{
                    
                    event.cancelBubble=true;
                }
                
                
                
                
            },
            //获取元素属性
            getType:function(event)
            {
                return event.type;
            },
            getElement:function(event)
            {
                return event.target || event.srcElement;
                
            }
            
            
            
        }
              //
        EventUtil.addHandler(q,"click",showMe);
         EventUtil.addHandler(q1,"click",showBox);
         EventUtil.addHandler(qa1,"click",stopGo);
    
    </script>
</body>
</html> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值