dom 事件

2019-04-24  本文已影响0人  不染事非
1、点击事件的方法
2、dom三要素

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #box {
            width: 200px;
            height: 200px;
            background: gray;
        }

        button {
            position: absolute;
            left: 400px;
            top: 400px;
            margin: 30px;
        }
    </style>
</head>

<body>
    <div id="box">
        <button id="btn">
            点击
        </button>
    </div>


    <script>
        var $btn = document.getElementById('btn');
        // 有三个参数 1-事件名称 2-函数(监听器) 3-事件监听的阶段 捕获阶段 冒泡阶段
        $btn.addEventListener('click', function (event) {
            // 阻止事件冒泡
            event.stopPropagation();
            alert('点击了按钮');
        }, false);
        var $box = document.getElementById('box');
        $box.addEventListener('click', function (ev) {
            alert('box元素被点击了');
        }, false);
    </script>
</body>

</html>
3.事件类别
DOM事件级别.png

DOM1也是存在,只是没有涉及到事件,DOM3比DOM2多了键盘和鼠标一些事件**
DOM的事件模型: 捕获----> 冒泡
DOM的事件流(三个阶段):捕获阶段---->目标阶段 -----> 冒泡阶段

4、DOM事件的Event对象的常见应用:
DOM的自定义事件:
var  eve = new Event('eventName') //eventName 自定义事件的名称
dom.addEventListener('eventName',function(){
})  //注册事件
dom.dispatchEvent(eve);   // 触发事件,
---------------------------------------------------------
这个事件不能添加参数,想要添加参数,得自定义 CustomEvent事件
// 添加一个适当的事件监听器
obj.addEventListener("cat", function(e) { process(e.detail) })
// 创建并分发事件
var event = new CustomEvent("cat", {"detail":{"hazcheeseburger":true}})
obj.dispatchEvent(event)
上一篇 下一篇

猜你喜欢

热点阅读