AngularJs中最接近的jQuery函数的等价物是什么
What is the equivalent of .closest jQuery function in AngularJs?
我正在尝试在Angular中实现一个自定义弹出窗口。问题是当打开弹出窗口时点击外部时,我不知道如何在没有覆盖的情况下轻松实现它。我发现在基于jQuery的库中,通常使用.closest
函数来实现这一点,但我找不到简单的Javascript方式的替代方法。
您的任务并不需要closest
方法。为了能够在点击它之外的任何地方时关闭弹出窗口,您应该在body
(或document
)元素上绑定一个点击事件处理程序,如果在那里检测到该事件,则只关闭弹出窗口。
它将起作用,因为点击事件在DOM树中冒泡,最终到达最顶层的元素,例如body
。
然后,当事件在弹出窗口内初始化时,您确保防止事件传播,因为您不会点击事件到达主体(如果处理了,弹出窗口将关闭)。为此,您在popup
容器上再绑定一个点击事件,当它发生时,您可以防止其进一步传播:
e.stopPropagation();
因此,当你与弹出窗口及其内容交互时,点击内部,做一些事情,点击事件永远不会到达主体,所以弹出窗口永远不会关闭。但一旦您在弹出窗口之外点击,冒泡点击事件将由body
处理程序处理,并将关闭弹出窗口。
相关文章:
- Minitest的水豚等价物是什么;s assert_select
- Angular2的$parse等价物是什么
- 反循环的lodash等价物是什么
- NodeJS中encodeURL和decodeURL的等价物是什么
- 如果我使用xhr请求,那么ajaxComplete的等价物是什么
- Array.any的等价物是什么?在JavaScript中
- jQuery(“.myContent”).hide()语句的javascript等价物是什么?
- 在jQuery中,这个Ajax代码的等价物是什么
- jQuery的hide()和show()的JavaScript等价物是什么?
- AngularJs中最接近的jQuery函数的等价物是什么
- 数组的子字符串等价物是什么
- javascript中escape的等价物是什么
- 谷歌图表JS API中虚线的chls属性的等价物是什么
- c#中这个javascript对象的等价物是什么?
- Prototype中的jQuery.active($.active)的等价物是什么
- JQuery中innerHTML的等价物是什么
- JQuery中document.getElementbyId的等价物是什么
- 这个jquery.ajax调用的纯JavaScript等价物是什么
- PHP中jquery对象的等价物是什么
- 角的等价物是什么?angular 2中的isFunction