zoukankan      html  css  js  c++  java
  • jQuery实现鼠标点击Div区域外隐藏Div

    冒泡定义:当一个元素上的事件被触发的时候,比如说鼠标点击了一个按钮,同样的事件将会在那个元素的所有祖先元素中被触发。这一过程被称为事件冒泡;这个事件从原始元素开始一直冒泡到DOM树的最上层。(摘自网络)

    1. 阻止事件冒泡, 并不阻止事件行为:event.stopPropagation();

    $(function() {
    	$("#link").click(function(event) {
    		event.stopPropagation();
    	});
    });

    2. 阻止事件行为,并阻止事件冒泡 :event.preventDefault();

    $(function() {
    	$("#link").click(function(event) {
    		event.preventDefault(); 
    	});
    });

    3. 阻止事件冒泡, 也阻止事件行为:return false;

    $(function() {
    	$("#link").click(function(event) {
    		return false;
    	});
    })



    阻止事件冒泡:
    $("#btn").click(function (event) { 
    	$("#demo").fadeIn(); 
    	$(document).one("click", function () {//对document绑定一个影藏Div方法 
    		$("#demo").hide(); 
    	});
    	event.stopPropagation();//点击Button阻止事件冒泡到document 
    }); 
    $("#demo").click(function (event) { 
    	event.stopPropagation();//在Div区域内的点击事件阻止冒泡到document 
    }); 
     

    例子:

     
    <p><a href="javascript:void(0)" class="a">菜单按钮</a></p>
    <div class="menu">
    <a href="http://www.baidu.com">百度</a>
    </div>
    
    
    $(".a").on("click", function(e){
        if($(".menu").is(":hidden")){
            $(".menu").show();
        }else{
            $(".menu").hide();
        }
    
        $(document).one("click", function(){
            $(".menu").hide();
        });
    
        e.stopPropagation();
    });
    $(".menu").on("click", function(e){
        e.stopPropagation();
    });
  • 相关阅读:
    拦截器
    Ajax
    JSON
    数据处理及跳转
    RestFul和控制器
    第一个MVC程序
    什么是SpringMVC
    回顾MVC
    声明式事务
    微软最强 Python 自动化工具开源了!不用写一行代码!
  • 原文地址:https://www.cnblogs.com/Web-Architecture/p/6928438.html
Copyright © 2011-2022 走看看