问题标签 [propagation]

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 回答
19126 浏览

javascript - stopPropagation:element.addEventListener vs onclick 属性

我正在玩stopPropagation,改编来自MDC 文档的代码。

问题来了:如果我按照他们所做的和使用element.addEVentListener("click", fname).
但是,当我尝试使用元素的onclick属性 ( <div onclick="fname();">) 附加函数时,传播不会停止。
如果我使用<div onclick="function(ev) {fname();}">, fname() 根本不会被调用(我也尝试过传递fname(ev)相同的结果)。

任何人的想法?如果您需要查看代码,请告诉我。

0 投票
1 回答
247 浏览

c++ - 管理事件的传播:指针还是实例?

我正在编写一个事件处理系统(遵循观察者模式......),我想知道哪种是传播或传播 Event 类的最佳方式,如下所示:

详细地说,如果更好地通过指针(分配的堆)或作为实例(分配的堆栈)发送它。

对比

我知道这是一个非常常见的问题,并且我知道针对一般情况的建议指南,但我想知道在事件处理的具体情况下,处理性能、优化、线程安全等。

我的想法是通过堆栈分配发送,看到该类只是一个 POD,并避免生活管理问题(或使用智能指针)。另一方面,事件传播树在我的应用程序中可能非常大,所以我担心这可能是一个问题。

谢谢你。(例如,如果你知道任何好的实现,不像 qt 那样复杂,请写下来学习)

0 投票
1 回答
3586 浏览

jquery - 将 onclick 事件添加到 td,但不应在其中的链接上触发

我有这个:

但问题是,当我单击该列中的链接时,这也会触发。我怎样才能防止这种情况?

尝试过类似的东西,table.data td :not(a)但这似乎根本不起作用..

谢谢。

--

没关系,刚刚发现了 e.target.nodeName!(如果这是处理这个问题的最佳方法:!='A')

0 投票
1 回答
379 浏览

jquery - jQuery 的 event.stopImmediatePropagation() 只防止事后绑定?

我的印象是event.stopImmediatePropagation()停止了所有其他绑定的事件处理程序,但在我当前的代码中,它似乎只停止我调用stopImmediatePropagation. 这是正确的吗?如果是这样,我怎样才能得到我想要的结果,而无需到处解除绑定和重新绑定?

0 投票
2 回答
9462 浏览

git - 如何在克隆时传播 Git Hooks

我在我的中央存储库中编写了一个预提交挂钩。当我的客户克隆存储库时,它永远不会传播钩子。我希望这些钩子也可以复制到我客户的存储库中。我的客户是 Windows 用户,使用 msysgit 作为 git 客户端。

有什么方法可以将挂钩复制到本地存储库?

0 投票
3 回答
18194 浏览

jquery - jQuery:在所有点击事件发生之前捕获它们?

在我的页面上,我有很多响应点击事件的各种元素。有时我需要根据一些全局标志阻止所有点击。有没有办法可以在集中位置进行此检查?

现在,在每个事件中,我都会检查标志,例如:

我想做的是有一个元素在任何其他元素 之前捕获所有点击事件。

我尝试在文档上执行此操作,但这些事件仅在其他点击事件之后发生。

例子:

我还尝试在所有内容之上放置一个全屏 div 并使用它来捕获事件,但问题是没有任何点击通过这个全屏 div 传播。此外,我不想依赖创建额外的元素来捕获点击,因为它感觉有点 hacky。

我可以覆盖 jQuery click 函数,以便我可以把我的小检查放在那里吗?

我在这里有什么明显的遗漏吗?

谢谢你的帮助。

0 投票
2 回答
11414 浏览

spring - 支持传播的 Spring 事务

我想了解使用传播支持进行春季交易的用途。java 文档提到,如果@Transactional(propagation = Propagation.SUPPORTS)从事务中调用具有的方法,则它支持该事务,但如果不存在事务,则该方法以非事务方式执行。

这不是春季交易的行为Propagation.SUPPORTS吗?

在上面的代码示例中,无论是否methodWithSupportsTx()@Transactional(propagation = Propagation.SUPPORTS)注释,它都会在事务中执行,具体取决于是否methodWithRequiredTx()@Transactional注释,对吧?

那么拥有传播级别支持的需要/用途是什么?

0 投票
3 回答
1066 浏览

jquery - 如何使用 jquery 跳过冒泡阶段

尝试做一些管理后端的事情,

我有一个包含动作链接的 tr 行。

当用户单击 tr 行时,它应该选择它(并且处理程序绑定到该事件,因此我可以在其他地方显示额外信息),并且当用户单击删除链接时,应该调用另一个处理程序来删除该项目。

为两个目标设置点击事件,如下所示:

当我单击删除链接时,似乎总是首先调用 tr 事件,并且由于我的 tr 处理程序重新加载页面,因此永远不会调用链接的处理程序。这很正常,因为冒泡系统会按以下顺序调用我的处理程序:

下降阶段:tr a

上升阶段:一个 tr

如何在 down 阶段跳过第一个 tr 的处理程序?

我用 e.preventDefault()、e.stopPropagation() 尝试了一些事情,但没有成功。

0 投票
1 回答
386 浏览

jquery - 点击问题 - 确认警报不会阻止 HREF 点击

我正在尝试完成以下任务:

当用户在包含复选框的 div("productListMatch") 外部单击时,如果选中了任何复选框,则会出现确认警报,让用户知道他们还没有保存复选框选择。

简而言之,我正在检查是否保存了选中的项目。如果是这样,请通知用户,让他们选择是否保存。

这就是我所做的:

虽然这通常有效,但它不适用于链接。单击它们后,它们将继续执行,并且我仍然会收到确认警报。

注意:在 div 之外的网页上有许多导航链接。“productListMatch” div 本身是 jquery 选项卡中内容的一部分(两个选项卡中的第二个),因此必须单击选项卡才能看到“productListMatch” div。

我想要的是这样的:

  • 如果单击任何链接 - 除了复选框(和保存按钮) - 被点击
    • 停止执行链接
      • 执行检查复选框是否被选中
        • 如果选中复选框,请提供确认警报
          • 如果用户单击“确定”,网页将继续链接最初单击的链接
          • 如果用户点击“取消”,网页不会继续链接最初点击的链接
        • 如果未选中复选框,则没有确认警报,并且网页继续链接最初选中的链接

我尝试了几种情况,虽然我可以让链接停止(我使用了 preventDefault),但我不确定如何让它们重新开始。也许我对这整件事的看法是错误的。

我将不胜感激。

谢谢。

斯蒂芬

0 投票
1 回答
287 浏览

java - Java ArrayList 内容未传播

我的代码在数组上运行算法,并将结果存储在 ArrayList 中。问题是我无法访问 ArrayList 的内容以进行后续处理。尽管我的实际代码长达数千行,但我已经解决了这个问题,并在下面的短代码段中重新创建了这个问题。您可以学习下面的三个类并在您的 IDE 中运行它们而无需更改以自己重现问题。如您所见,它在 makeArrayList.java 中填充了 ArrayList,但是 ArrayList 的内容随后在 getArrayList.java 中不可见。

谁能告诉我如何修复下面的代码,以便 ArrayList 的内容在 getArrayList.java 和 myGUI.java 中变得可见/可用?

下面是三个类的代码:

myGUI.java 的代码是:

getArrayList.java 的代码是:

makeArrayList.java 的代码是: