事件委托

为什么用事件委托?
可以监听还没有出生的儿子(动态生成的元素)。
省监听器。

function(element,eventype,selctor,fn){
        element.addEventListener(eventType,(e)=>{
            let el = e.target
            while(!el.matches(selector)){//如果找到了selctor终止循环
                if(element === el){//寻找selctor,若直道element还未找到break退出
                    el = null 
                    break
                }
                el = el.parentNode
            }
            el&&fn.call(el,e,el) //将被点击的元素和监听的元素传入
        })
        return element
    }

你可能感兴趣的:(事件委托)