博主信息
博文 54
粉丝 4
评论 1
访问量 65698
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
冒泡事件和委派,写留言本-2019年7月12日
神仙不在的博客
原创
786人浏览过

所谓的冒泡就是事件向上传递,后代元素的事件被触发,祖先的相同事件也被触发。

委派:将事件统一绑定给元素的共同祖先,这样当后代元素的事件被触发时,会冒泡到祖先元素,从而通过祖先元素的响应来处理事件。

实例

<!DOCTYPE html>
<html lang="en" >
<head>
    <meta charset="UTF-8">
    <title>委派</title>

</head>
<body >

<ul>
    <li>item1</li>
    <li>item2</li>
    <li>item3</li>
    <li>item4</li>
    <li>item5</li>
</ul>
<script>
  
    var ul = document.getElementsByTagName('ul').item(0);
    ul.addEventListener('click',function (ev) {alert(this.nodeName);  },false);

</script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


这个留言本写下来真的费力,视频看了好几遍。

实例

<!DOCTYPE html>
<html lang="cn_zh">
<head>
    <meta charset="UTF-8">
    <title>留言本</title>
</head>
<body>
<label for="comment">留言本</label>
<input type="text" name="comment" id="comment" autofocus>
<ul id="list"></ul>
<script>
    var comment = document.getElementById('comment');
    var ul = document.getElementById('list');
    comment.addEventListener('keypress',getvalue,false);
    function getvalue(event) {
        if (event.key==='Enter') {
        var li = document.createElement('li');
            li.innerHTML = comment.value +  '  <button>删去</button>';
        if (ul.childElementCount === 0) {ul.appendChild(li);
            comment.value = null;}else{
            ul.insertBefore(li,ul.firstElementChild);
            comment.value = null;
        }

        }
    }
    ul.addEventListener("click", del,false);
    function del(event) {
        if ( confirm("你确定删去?")) {
            event.currentTarget.removeChild(event.target.parentElement);
        }

    }



</script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

currentTarget 指代 事件的监听者

Target指代事件的触发者

event.currentTarget.removeChild(event.target.parentElement)  这一句好长,但是也好理解。

这个留言本只是基础功能,还需要多练习,理解js编程的思想和方法。

js小结下

找对象,搞对象。

批改状态:合格

老师批语:一切的学习, 都是从最基础的知识 开始, 不要着急
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学