jquery事件委托疑问(delegate)
点击某个空间弹出 $.confirm 确认框, 确认框的内容是动态来自于当前页面的Div块。
由于 $.confirm 弹出框在 close 的时候回执行 $.remove 程序,所以内容需要每次创建;
基于以上情况使用的是事件委托:delegate
HTML如下:

JS代码如下:

遇到这个问题我也做过简单测试,发现以下代码也是无效的:
但是如果在原来的html标签中追加新的选择器则会触发委托事件
由于 $.confirm 弹出框在 close 的时候回执行 $.remove 程序,所以内容需要每次创建;
基于以上情况使用的是事件委托:delegate
HTML如下:

JS代码如下:

遇到这个问题我也做过简单测试,发现以下代码也是无效的:
<div class="test">
<button class="btn">Delegate Test</button>
</div>
$("body").undelegate(".test .btn", "click").delegate(".test .btn", "click", function(){alert(1)});
$("body").undelegate(".test .btn", "click").delegate(".test .btn", "click", function(){alert(1)});
var jc = $.confirm({
title : "Delegate Test",
content : ""
});
jc.setContent($("<div/>").append($(".test .btn")).html());
但是如果在原来的html标签中追加新的选择器则会触发委托事件
...全文
相关推荐
jQuery事件绑定和委托实例
jQuery事件绑定和委托是JavaScript库jQuery中用于处理用户交互的核心机制。它们允许开发者响应用户的动作,如点击、鼠标悬浮、键盘输入等。本文将详细解释这些概念,并通过实例展示其用法。
jQuery事件 delegate()使用方法介绍
事件委托的工作原理是利用了事件冒泡机制,即子元素上的事件会向上冒泡到父元素,除非被明确地停止或取消。
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
然而,正如描述中提到的,当需要为同一个元素添加多个事件委托时,`.delegate()`可能无法胜任。
jQuery中delegate与on的用法与区别示例介绍
在讨论jQuery中事件委托的相关技术时,我们经常需要考虑两种主要的方法:delegate()和on()。
jQuery中delegate和on的用法与区别详细解析
"jQuery中的.delegate()和.on()都是用于事件委托的方法,但自jQuery 1.7以后,.delegate()已被.on()所替代。这两种方法主要用于动态添加元素的事件处理,确保对


Web 开发
