zoukankan      html  css  js  c++  java
  • CSS3中的mouse事件(mouseleave,mouseenter,mouseout,mouseover)

    当指针设备移动到存在监听器的元素或其子元素的时候,事件就会触发区别:

     mouseover,  mouseout(有冒泡机制)

    mouseenter,  mouseleave(无冒泡机制)

    代码伺候:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title>hello</title>
    		<script src="js/jquery.js"></script>
    		<style type="text/css">
    			#test{
    				 300px;
    				height: 400px;
    				border: 1px solid;
    				background-color: skyblue;
    			}
    			#inner{
    				position: absolute;
    				 100px;
    				height: 100px;
    				right: 100px;
    				top: 300px;
    				background-color: aqua;
    			}
    			
    		</style>
    		<body>
    		    
    			<div id="test" onmouseover="console.log('hello');">
    				<div id="inner"></div>
    				
    			</div>
    		</body>
    </html>
    

    鼠标在inner元素上(也就是绑定了onmouseover事件的test元素的子元素)悬停:执行结果如下图:

              

    如果觉得不好理解:再看一个例子

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title>hello</title>
    		<script src="js/jquery.js"></script>
    		<style type="text/css">
    			#test{
    				 300px;
    				height: 400px;
    				border: 1px solid;
    				background-color: skyblue;
    			}
    			#inner{
    				 100px;
    				height: 100px;
    				background-color: aqua;
    			}
    			
    		</style>
    		<body>
    		    
    			<div id="test" onmouseover="console.log('hello');">
    				<div id="inner"></div>
    				
    			</div>
    		</body>
    </html>
    

    运行结果:

           

     如果还是理解不了,可参看JS的事件流机制。

      JS的事件流的简要介绍:

      在标准的“DOM2级事件”中规定,事件流首先是经过事件捕获阶段,接着是处于目标阶段,最后是事件冒泡阶段。这里可以画个图示意一下:

       首先在事件捕获过程中,document对象首先接收到click事件,然后事件沿着DOM树依次向下,一直传播到事件的实际目标。就是id为btn的标签。

       接着在事件冒泡的过程中,时间开始是由具体的元素(a标签)接收,然后逐级向上传播到较为不具体的节点。

  • 相关阅读:
    stl 在 acm中的应用总结
    hdu_2089(数位dp)
    水dp第二天(背包有关)
    dp水一天
    poj_2195Going Home(最小费用最大流)
    poj_3281Dining(网络流+拆点)
    GSS4
    SPOJ GSS1_Can you answer these queries I(线段树区间合并)
    Ajax实现局部数据交互的一个简单实例
    对学习Ajax的知识总结
  • 原文地址:https://www.cnblogs.com/xiaohaodeboke/p/12513266.html
Copyright © 2011-2022 走看看