jquery一个on()而不是bind()和live()

Eug*_*nko 2 jquery event-handling

我需要处理静态创建和动态创建元素的事件.静态创建元素的解决方案是:

$(".js-tag-close").on("click", function ()
{
   $(this).parent().remove();
});
Run Code Online (Sandbox Code Playgroud)

动态创建:

$(".custom-tags-selector").on("click", ".js-tag-close", function ()
{
    $(this).parent().remove();
});
Run Code Online (Sandbox Code Playgroud)

如何在一个on()中处理这两个案例?

提前致谢...

Did*_*hys 5

第二种方法适用于静态元素和动态元素.

为什么?

因为您将事件处理程序执行委派给容器.custom-tags-selector.只要.js-tag-close单击指定选择器有效的任何后代,无论它是否已存在或是否动态添加,都将执行该处理程序.

唯一的条件是当代码运行时,您委派的容器存在于DOM中.

DEMO