<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 事件冒泡,就是事件会一级一级往上传递 -->
    <script src="jquery-1.11.3/jquery.min.js"></script>
    <script>
        $(function(){
            var $btn =  $("#btn1");
            var $div = $("div");
            $btn.click(function(){
                alert("我是按钮");
                // 取消事件冒泡,不让事件向父级空间传递
                // 默认事件是会进行冒泡
                return false
            });
            // $div.click(function(){
            //     alert("我是div");
            // });
            // 通过事件代理让父控件代理子控件的事件,然后执行子控件的相关操作
            var $ul = $("div ul");
            $ul.delegate("li","click",function(){
                $(this).css({"color":"red"});
            });
            // 可以代理不同子控件的事件,多个选择器之间逗号分隔即可
            var $box = $("#box");
            $box.delegate("#p2,#btn2","click",function(){
                $(this).css({"color":"red"});
                alert('ok');
            });
        });
        
    </script>
</head>
<body>
    <div>
        <p id="p1">哈哈</p>
        <input type="button" value="按钮" id="btn1">
        <ul>
            <li>哈哈</li>
            <li>嘻嘻</li>
            <li>美滋滋</li>
        </ul>
    </div>
    <div id="box">
        <p id="p2">哈哈2</p>
        <input type="button" value="按钮" id="btn2">
    </div>
</body>
</html>