问题标签 [event-delegation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
531 浏览

javascript - Javascript 事件委托——将时间选择器添加到弹出表单

我正在尝试在弹出表单中创建一个时间选择器。我正在与事件委托作斗争——我能够让时间选择器在表格之外工作,但不能在表格内部工作。

我当前的代码,没有时间选择器弹出:

这在弹出框内不起作用,仅适用于其中的#timepick。我知道我需要以某种方式使用 .on() jquery 函数。

也没有工作。

当前试用的粘贴箱:

http://pastebin.com/gta7TD47

编辑:

所以这最有效:

唯一的问题是,它目前需要您单击该框,然后添加事件处理程序,然后单击关闭并重新单击 - 因此在工作之前需要单击。我如何让它立即开火?不知何故使用.trigger()?

0 投票
1 回答
109 浏览

javascript - 事件委托与每个 DOM 的关联对象

我有一些 DOM 元素是通过事件和 clousure 动态创建的。

像这样的东西:

我的问题是我该如何使用事件委托呢?所以所有的点击事件都在#container dom 上,但仍然有与 dom 关联的 obj-object。

我想我可以使用另一个对象并将其用作“散列”表,带有 dom 元素和 obj,然后在“散列”表上使用 e.target,但没有更好的解决方案吗?

0 投票
1 回答
580 浏览

javascript - 节流函数和事件委托

我的问题,我想去抖动函数调用,但与调用函数的范围有关。

在我的示例中,我查找事件委托的点击并消除点击。

这可行,但去抖动不是特定于元素的!

http://jsbin.com/itapuf/2/edit

有没有优雅的方法?


编辑: 更具体地说(我的英语不是最好的)

我想替换这段代码:

通过这个(委托事件):

但如果我这样做,可能会丢失对特定元素的最新点击。

我需要类似的东西:

但是如何改变油门功能使其像这样工作呢?

或者这个问题有更好的解决方案吗?

0 投票
1 回答
98 浏览

jquery - 关闭选择中特定项目的事件

假设我有这样的事情:

显然,我希望所有按钮都能doSomething()点击。现在假设我希望其中一个按钮不这​​样做,而是做其他事情。

这不起作用,但我需要它。有没有办法做到这一点?我非常希望不必单独连接每个按钮。

.off()文档的这一部分让我很生气:

要删除特定的委托事件处理程序,请提供选择器参数。选择器字符串必须与附加事件处理程序时传递给 .on() 的字符串完全匹配。

这是一个演示我正在尝试做的事情的小提琴。

0 投票
1 回答
147 浏览

jquery - jQuery on event 不适用于未来的选择器

我有一个模态窗口。在其中有一个 ID 为WebPartWPQ2的表,它将在三种不同的状态下具有三个不同的类。这些类是ms-applyfiltersinactivems-applyfiltersactivems-applyfiltershoverover。最初,当模态窗口弹出时,表格将具有ms-applyfiltersinactive类。只有在其中的选择框中更改选项时,表的类才会更改为ms-applyfiltersactive,然后在鼠标悬停时,该类会更改为ms-applyfiltershoverover。关闭窗口时,表的类重置为ms-applyfiltersinactive

要求是只有当它处于活动状态时,我才需要在表上有一个点击事件,即有一个类ms-applyfiltersactivems-applyfiltershoverover

我在用

这无法将点击事件附加到表格。这可能是因为表的类是ms-applyfiltersinactive

如果我使用以下代码

在所有三种情况下都会触发该事件,这是我不想要的。

我尝试使用hasClassis事件过滤掉选择器。

但是当表有任何类时,这会返回相同的布尔值。

这个你能帮我吗。

0 投票
1 回答
348 浏览

jquery - 确定点击的元素是否在特定的 div 内

我有一系列带有“addelement”类的div,它们是动态添加的。在所有这些层中都有更多嵌套的 div,其中一个包含一些带有附加事件的图像。当我点击其中一张图片时,我想知道它是否在这些 div 的最后一个:

我不知道为什么,但是这个条件表达式的触发与触发器是否在最后一个'elementadded' div 内的情况无关。但是,如果我尝试将 css 应用于这样的元素:

它就像一个魅力。我错过了什么?有谁能够帮助我?

0 投票
2 回答
1044 浏览

javascript - 如何使用所选行中的数据?

如何从我选择的表中收集行上的数据并在结果中使用它?

这是我用来显示数据输入屏幕的javascript,一旦通过选择行调用了函数。现在我只需要在 PHP 中设计一个表单,其中将包括 (1) 所选行中的一些数据和 (2) 将收集的一些新数据。

这是选择行并调用数据输入表单的 Javascript

这是PHP脚本

0 投票
1 回答
1464 浏览

iframe - 从 iframe 触发 Backbone.js 委托事件

我有一种情况,我在主干视图中加载 iframe。该视图具有处理点击事件的事件哈希。

这适用于视图所属的 DOM。问题是当我在 iframe DOM 内单击时,单击事件不会冒泡到视图中(如预期的那样)。所以我写了一些代码,将点击从 iframe DOM 转移到父 DOM。我在 iframe 体内有以下内容。

这适用于常规 jquery 事件处理程序,但由于某种原因,它不会触发视图的事件处理程序(来自事件哈希)。

有没有人有任何想法?

0 投票
1 回答
978 浏览

jquery - 带有选择元素的jQuery事件委托?

在进行一些健全性测试时,我注意到以下change事件绑定有效:

虽然on事件绑定不:

这种不一致是否有任何解决方法或解释?

0 投票
2 回答
174 浏览

jquery - 将不同的事件和不同的选择器连接到相同的功能

假设我有一些这样的代码:

是否有更有效的方法将事件和选择器连接到相同的功能?