事件对象模型e的具体用法即拓展

142 阅读1分钟
const ul = document.querySelector('ul')
        ul.addEventListener('click',function(e){
            console.log(e.target);

           /*  e.target.style.color = 'red'  // 点击的对象
            //需求。只有点击li才有效果 */
            if(e.target.tagName === 'LI'){
                e.target.style.color = 'red'
                //修改标签样式
            }
        }

事件对象模型e,指的是当我们触发事件时,监听方法中的回调函数会有一个作用对象,这个作用对象所指向的是用户点击的标签,例如上述代码中,当用户在ul的标签内点击的是li标签,监听函数会生成一个对象e,这个e所指向便是li标签所拥有的标签属性对象,在控制台中会输出e会展示该li标签的所有相关信息,包含其父节点、子节点等。这也就意味着我们可以通过操作e对象从而实现对标签li的属性进行操作。

同时,也可以通过对父节点进行监听在予以判断条件来实现事件委托,这可以大大提高代码的简洁度并提高性能,也可以减少标签对象模型的创建,做到动一个节点就可以实现操作所有元素。