博主信息
博文 21
粉丝 0
评论 0
访问量 27895
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
事件添加方式,监听器和事件代理的实例演示
N.
原创
1025人浏览过
事件的添加方式
  • 通过属性来添加事件,事件属性: on + 事件名称, onclick
  • 通过脚本的方式添加事件,而不需要添加事件属性,
  1. ev.target: 表示当前按钮,其实就是事件的触发者,
  2. .addEventListener(事件名称, 回调方法, 传递机制/捕获/冒泡),
  3. false: 冒泡阶段触发这个事件, true: 捕获阶段。
  4. %s是占位符,
    代码如下:

    1. <html lang="">
    2. <head>
    3. <meta charset="UTF-8" />
    4. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    5. <title>Document</title>
    6. </head>
    7. <body>
    8. <!-- 这是直接添加事件属性的方式 -->
    9. <button onclick="console.log(`哈哈,这是按钮一`)">按钮一</button>
    10. <!-- 这是通过事件属性添加函数的方式 -->
    11. <button onclick="hanshu(this)">按钮二</button>
    12. <!-- 通过给对象添加属性的方式 -->
    13. <button>按钮三</button>
    14. <button>按钮四</button>
    15. <script>
    16. // 这是按钮二的事件属性的函数
    17. function hanshu() {
    18. console.log("哈哈 这是按钮二");
    19. }
    20. const bt3 = document.querySelector("button:nth-of-type(3)");
    21. bt3.onclick = () => console.log("哈哈,这是按钮三");
    22. // 事件监听器
    23. const bt4 = document.querySelector("button:nth-of-type(4)");
    24. // .addEventListener(事件名称, 回调方法, 传递机制/捕获/冒泡)
    25. bt4.addEventListener("click", () => console.log("哈哈,这是按钮四的监听"), false);
    26. bt4.addEventListener("mouseover", () => console.log("移进来了"), false);
    27. bt4.addEventListener("mouseout", () => console.log("移出去了"), false);
    28. </script>
    29. <ul>
    30. <li>第一行</li>
    31. <li>第二行</li>
    32. <li>第三行</li>
    33. <li>第四行</li>
    34. <li>第五行</li>
    35. </ul>
    36. <script>
    37. // 根据冒泡原理,子元素的同名事件会向上冒泡到父级元素的同名事件上
    38. const ul = document.querySelector("ul");
    39. // ev.target: 事件的触发者, ev.currentTarget: 事件的绑定者
    40. ul.addEventListener("click", (aa) => console.log("触发 %s, 绑定 %s", aa.target, aa.currentTarget), false);
    41. </script>
    42. </body>
    43. </html>

截图在这

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系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+教程免费学