吃瓜网站&吃瓜事件:
事件委托(点击事件绑定+ul标签,然后怎么确定点击是下面哪个li标签...
在这个示例中,我们首先获取了id为myList的ul元素,然后通过addEventListener方法将点击事件绑定到ul元素上。当点击ul元素的子元素li时,事件会冒泡到ul元素上,触发事件处理函数。在事件处理函数中,我们通过event.target来获取实际触发事件的元素。
这个的意思,就是给[文]#ul1里面的每个[章]li绑定click[来]事件,并把事件触发[自]后的处理都委托给#[Z]ul1。
事件源:发生事件的对象,一般指某一具体的组件,比如:用户点击某Button,则此Button即为事件源。又比如: ul 里有很多 li 标签,而我点击了 li 标签,这个即为事件源。事件源作用:能进行事件委托,处理冒泡事件,提高性能。
事件委托、事件代理详解
事件委托又称事件代理。是指将自身的事件委托给上级处理。即:子级将事件委托给父级来处理。实现原理:是基于EventFlow中的事件冒泡。当子级成为事件的起源的时候,就会通过事件传播一级一级向上进行冒泡。然后父级监听到该事件后就进行相应的逻辑处理。应用场景:主要是用在原生js中的dom的增删改。
事件委托就是利用事[B]件冒泡,只指定一个[L]事件处理程序,就可[O]以管理某一类型的所[G]有事件,事件委托又[文]叫事件代理。举一个[章]通俗的例子:有三个[来]同事预计会在周一收[自]到快递。为签收快递[Z],有两种办法:一是[B]三个人在公司门口等[L]快递;二是委托给前[O]台代为签收。
事件委托也叫事件代理,就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。网上有个经典栗子,取快递来解释事件委托原理:主要有两个含义:节省内存,提高性能 事件委托是利用事件的冒泡原理来实现的,事件从最开始的节点向上传播事件。
事件代理和事件委托
事件委托又称事件代理。是指将自身的事件委托给上级处理。即:子级将事件委托给父级来处理。实现原理:是基于EventFlow中的事件冒泡。当子级成为事件的起源的时候,就会通过事件传播一级一级向上进行冒泡。然后父级监听到该事件后就进行相应的逻辑处理。应用场景:主要是用在原生js中的dom的增删改。
事件委托也叫事件代[G]理,就是利用事件冒[文]泡,只指定一个事件[章]处理程序,就可以管[来]理某一类型的所有事[自]件。网上有个经典栗[Z]子,取快递来解释事[B]件委托原理:主要有[L]两个含义:节省内存[O],提高性能 事件委托是利用事件[G]的冒泡原理来实现的[文],事件从最开始的节[章]点向上传播事件。
事件代理和事件委托[来]实际上说的是同一件[自]事,只是站在不同的[Z]角度来说的。比如说[B]元素A把事件处理委[L]托给自己的父元素B[O]去处理,那么A就是[G]事件委托方,而B就[文]是事件代理方,两者[章]参与的实际上是同一[来]件事。
事件委托就是利用事[自]件冒泡,只指定一个[Z]事件处理程序,就可[B]以管理某一类型的所[L]有事件,事件委托又[O]叫事件代理。举一个[G]通俗的例子:有三个[文]同事预计会在周一收[章]到快递。为签收快递[来],有两种办法:一是[自]三个人在公司门口等[Z]快递;二是委托给前[B]台代为签收。
这主要得益于浏览器的事件冒泡机制。事件代理用到了两个在JavaSciprt事件中常被忽略的特性:事件冒泡以及目标元素。事件委托优点:减少事件注册,节省内存。比如,在table上代理所有td的click事件。在ul上代理所有li的click事件。简化了dom节点更新时,相应事件的更新。