美文网首页程序员饥人谷技术博客
事件委托解决(事件冒泡不行)点击子级触发父级事件

事件委托解决(事件冒泡不行)点击子级触发父级事件

作者: 柠檬树QAQ | 来源:发表于2017-02-26 01:12 被阅读0次

经常在 网上看到 点击按钮 出现一个 下拉列表
点击下拉列表 跳出一个 二级标题 或跳转页面
用 ul--li--ul--li 的布局试了一下 发现点击子级的时候
子级会隐藏(父级li 子级ul包在 li下 因为子级ul
也属于li 用冒泡 不行 ) 研究了好久 用事件委托搞定

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        *{list-style: none; margin: 0;padding: 0;}
        #btn{width:100px;height: 100px;background: red; cursor: pointer;padding-top: 100px; position: relative; }
        #pox{display: none; position: absolute;bottom: -400px;}
        #pox p{width: 100px;height: 400px;background: green;}
    </style>
    <script>
        window.onload=function () {
            var oBtn=document.getElementById('btn');
            var oPox=document.getElementById('pox');
            oBtn.onclick=function (ev) {
                var oEvent=ev||event;
                var oSrc=oEvent.srcElement||oEvent.target;
                if(oSrc.id=='btn'&&oPox.style.display=='block'){
                    oPox.style.display='none';
                }else{
                    oPox.style.display='block';
                }
            }
        }
    </script>



</head>
<body>
<ul>
    <li id="btn">11
        <ul>
            <li id="pox">
                <p></p>
            </li>
        </ul>
    </li>

</ul>
</body>
</html>

相关文章

  • 使用append动态添加的子节点,需要重新绑定事件才能使用

    解决方法:使用委托事件调取 事件委托是通过事件冒泡的原理,利用父级去触发子级的事件。如下html,如果不用事件委托...

  • 事件委托解决(事件冒泡不行)点击子级触发父级事件

    经常在 网上看到 点击按钮 出现一个 下拉列表点击下拉列表 跳出一个 二级标题 或跳转页面用 ul--li--...

  • 事件委托与冒泡、事件捕获

    事件委托:利用冒泡的原理,把事件加到父级上,触发执行效果。 例子: 事件冒泡:事件从事件目标(target)开始,...

  • Js-事件

    一.事件的两种绑定方式 code: 二.冒泡和默认事件 冒泡: 子级父级都有点击事件时,子级区域点击,子级响应事件...

  • js事件监听 事件冒泡 和css3新增

    事件监听:事件捕获 目标阶段 冒泡阶段 事件冒泡:当使用事件冒泡时,子元素先触发,父级元素后触发。 //阻止事件冒...

  • 【JS】事件委托

    事件委托,主要思想是: 给父级元素定义一个事件(比如 onclick 点击事件)。 父级元素触发这个事件后,就会命...

  • 01、JavaScript基础

    请说明什么是事件冒泡和事件捕获答:(1)事件冒泡:父级和子级拥有相同的事件,同时触发事件的话,事件会从子级向上传递...

  • JS和JQuery中的事件委托

    什么是事件委托(事件代理) 事件委托通俗来讲就是利用冒泡的原理,把事件追加到父级,触发执行效果。比如当一个父节点下...

  • 事件委托

    事件委托是通过事件冒泡的原理,利用父级给子级添加事件。事件委托的好处是不需要去遍历元素的子节点,只需要给父节点添加...

  • 云平台(1)

    技术总结:# 一 事件委托 事件委托利用冒泡的原理,把事件加到父级身上,触发执行效果,其好处:a 提高性能,新添加...

网友评论

    本文标题:事件委托解决(事件冒泡不行)点击子级触发父级事件

    本文链接:https://www.haomeiwen.com/subject/nyxowttx.html