js事件绑定,事件流,事件代理的一些理解

    xiaoxiao2021-03-25  170

    一、事件绑定:

    事件绑定的三种方法:

    1、在DOM中直接绑定:

    //<ul id="parent-list" οnclick="printName(this)"> //this指当前发生时间的html元素

    2、在js代码中绑定:

    var node = document.getElementById("parent-list"); node.onclick = function(){ console.log(this); //this指当前发生时间的html元素 }

    3、绑定监听函数:(addEventListener  或者 attachEvent,可以绑定多个监听事件)

    function addEvent(obj, type, handle){ try{ obj.addEventListener(type, handle, false); } catch(e){ try{ obj.attachEvent('on'+type, handle); } catch(e){ obj['on' + type] = handle; } } } 比较兼容的写法:不过在addEventListener  或者 attachEvent都不支持的情况下只能绑定一个函数,不能绑定多个。

    !!!注意:

    1、addEventListener 可以再同一个元素上绑定很多个事件

    2、

    3、

    二、事件流:

    捕获:所绑定的相同事件从祖先元素到子元素触发。

    冒泡:所绑定的相同事件从子元素到祖先元素触发。

    三、事件代理:

    应用场景:同一个ul下如果有很多个li标签

    转载请注明原文地址: https://ju.6miu.com/read-1258.html

    最新回复(0)