问题标签 [event-capturing]

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 投票
1 回答
335 浏览

jquery - 为什么一本书说 DOM 事件流既有捕获又有冒泡?那么事件不会发生两次吗?

Zakas 的《Professional Javascript》一书说

1) IE 使用事件冒泡
2) Netscape 使用事件捕获
3) DOM 事件流是先捕获然后冒泡

那么,事件处理程序不会被调用两次吗?这是什么 DOM 事件流,是 DOM 2 级事件处理吗?

据我了解,以下是否属实?

a) IE 6、7、8 都使用冒泡
b) FF、Chrome、Safari、Opera 都使用捕获?
c) jQuery 通过使其“冒泡”使一切都变得相同

0 投票
1 回答
71 浏览

jquery - 在“链接”(或 div)以及父元素或祖先元素处监听事件的好例子是什么?

大多数时候,我看到代码为链接或 div 或按钮注册事件侦听器,并从那里处理所有事情。但是事件捕获和冒泡可以很好地处理后代级别的事件,然后是祖先级别的事件。但是,我们希望在 2 个不同的地方聆听的好例子是什么?

0 投票
1 回答
2055 浏览

jquery - 在事件捕获阶段绑定 jQuery 处理程序(不是事件冒泡)

我希望以类似于quirksmode上建议的方式在模糊/焦点事件上实现事件委托。正如 TFA 中所解释的,模糊和焦点事件不会冒泡,因此您不能在冒泡阶段对它们使用事件委托,但您可以在捕获阶段抓住它们(伙计,javascript 事件很奇怪)。

无论如何,据我所知,jQuery 事件都适用于冒泡阶段,或者至少那是我一直使用它们的地方。我在 jQuery 文档中看不到任何关于这种或另一种方式的信息,默认情况下使用类似 $('#foo').blur(blurHandler) 的东西似乎无法捕捉到它。

我宁愿坚持使用 jQuery 来保持一致性;有什么办法吗?

0 投票
1 回答
5395 浏览

asp.net - 如何以 WPF 形式捕获网页的按钮单击事件(在 WebBrowser 控件中打开)?

考虑一个场景,我在 WPF 应用程序中有一个 WebBrowser 控件。在 WebBrowser 控件中加载了一个网页。该网页包含一个按钮。该网页是 ASP.NET 应用程序。

我想将网页的按钮单击事件捕获到 WPF 表单(托管 WebBrowser 控件)中。有没有办法实现这个功能?

谢谢,

塔班

0 投票
2 回答
5860 浏览

c# - 从另一个 Windows 应用程序捕获用户事件(按钮单击等)

我正在寻找编写一个 .Net Windows 应用程序来捕获用户如何使用另一个正在运行的应用程序。

最简单的形式是记录单击了哪些按钮或打开了哪些菜单项。捕获按钮文本或菜单文本就足够了。

我知道这可以通过监听事件来完成,但不确定这会延伸多远。在 Windows 中,您是否能够侦听其他应用程序事件,或者它们是否对其他应用程序隐藏?

如果是这样,是否有任何我可以使用的 .Net 库或开源项目来捕捉这些事件?更进一步,将这些转换为通用事件(我认为许多应用程序可能会触发特定于它们的事件,因此提取通用信息是关键)

如果不是,是唯一将我的代码与应用程序集成以访问该应用程序事件的解决方案吗?

非常感谢

0 投票
6 回答
111 浏览

javascript - 在javascript中捕获事件

在上面的代码中,为什么在页面加载时触发事件而不是在我单击 div 时触发...这也是正确的事件名称 click 或 onclick ....

0 投票
1 回答
7314 浏览

javascript - 使用 addEventListener 进行冒泡和捕获

我最近发现了使用 javascript 对 DOM 事件进行冒泡和捕获之间的区别。现在我明白它应该如何工作了,但我发现了一个奇怪的情况,我想知道为什么会这样。

根据Quirks mode,事件传播从在外部 div 上捕获开始,到达底部,然后冒泡到顶部。问题是当我开始做一些测试时。

在第一个上,一切都按预期工作:

如果单击文本,警报会“捕获”、“捕获”、“冒泡”和“冒泡”。问题是使用以下代码:

在这种情况下,警报会“捕获”、“冒泡”、“捕获”和“冒泡”。如果您注意到,唯一的区别是在第二个中首先分配冒泡,但我认为这不会有任何区别。

我已经用 Firefox 和 Chrome 尝试过,结果是一样的(我知道 Internet Explorer 不处理捕获)。

0 投票
2 回答
4931 浏览

jquery - 事件冒泡和捕获的常见实际用途示例?

有人可以在 jQuery/javascript 中提供事件冒泡和事件捕获的实用日常示例吗?我看到各种各样的例子展示了这些概念,但它们似乎总是你在常规网络应用程序中永远不需要的东西。

描述和代码片段将不胜感激。

0 投票
3 回答
23341 浏览

jquery - Trying to simulate label click

Why doesn't this work? The label is inside the .item parent. I don't want to put it outside of block elements as it wouldn't be valid.

So I'm trying to simulate a label click:

Edit: It's supposed to trigger the label and check a radio.

0 投票
0 回答
562 浏览

android - Android:当方向从纵向更改为reversePortait时捕获事件

我的应用程序仅支持纵向模式,包括倒置视图。因此,我在清单中有以下内容:

还有以下捕获方向变化事件:

但是仅支持纵向的应用程序不会触发 onConfigurationChanged 事件。

当应用程序将方向从正常纵向更改为反向纵向时,我需要捕获该事件。任何想法?