zoukankan      html  css  js  c++  java
  • 事件捕获

    HTML

    <div id="div1">
    	<div id="div2">
    		<div id="div3"></div>
    	</div>
    </div>
    

    CSS

    	#div1{
    		height: 150px;
    		background: blue;
    		padding: 30px;
    	}
    	#div2{
    		background: red;
    		height: 100%;
    		 100%;
    	}
    	#div3{
    		background: green;
    		 100px;
    		height: 100px;
    		position: absolute;
    		top: 300px;
    		left: 100px;
    	}
    

    JS

    var oDiv1=document.getElementById("div1");
    var oDiv2=document.getElementById("div2");
    var oDiv3=document.getElementById("div3");
    
    function fn1(){
    	alert(this.id);
    }
    //捕获事件为true和false时事件触发的顺序是不同的
    
    //当事件捕获为false时,捕获出来的事件
    //事件冒泡点击oDiv3分别弹出div3、div2、div1
    //oDiv1.addEventListener('click',fn1,false);
    //oDiv2.addEventListener('click',fn1,false);
    //oDiv3.addEventListener('click',fn1,false);
    
    
    
    //当事件捕获为true时,捕获作用在元素上的事件(进去的事件)
    //事件冒泡点击oDiv3分别弹出div1、div2、div3
    //oDiv1.addEventListener('click',fn1,true);
    //oDiv2.addEventListener('click',fn1,true);
    //oDiv3.addEventListener('click',fn1,true);
    
    //出来的事件,弹出3、2后,再弹出1
    oDiv1.addEventListener('click',function(){
    	alert(1);
    },false);
    
    //进入的事件所以先触发该事件,先弹出3
    oDiv1.addEventListener('click',function(){
    	alert(3);
    },true);
    
    //出来的事件,弹出3后,再弹出2
    oDiv3.addEventListener('click',function(){
    	alert(2);
    },false);
    

      

      

  • 相关阅读:
    contentSize,contentOffset,contentInset整理
    UITableViewCell的移动
    怎么修改Xcode新项目或新文件最上面的Creat By XXX
    objc_setAssociatedObject 关联对象
    Python strip()方法
    Python函数中*args和**kwargs来传递变长参数的用法
    python闭包
    Grand Garden思维题
    Circles Inside a Square(几何题)
    Matrix Transformation(模拟)
  • 原文地址:https://www.cnblogs.com/yangxue72/p/8134612.html
Copyright © 2011-2022 走看看