确定事件目标是否是已知元素的子元素的最有希望的方法是什么?
What is the most promising way to find whether or not event target is a child of known element?
我可以像这样访问父元素:
var parentElem = angular.element('#parent');
然后在下面的点击事件中,我想检查点击是否由上面父级的任何子级生成。
$('html').click(function (e) {
// check e.target is child of 'parentElem'
});
您应该能够使用普通的JavaScript实现这一点:
// Get a reference to a raw DOM node
var parentElem = angular.element("#parent")[0];
$("html").click(function(e) {
// Get a reference to the event target
var element = e.target;
// "Climb" up the document tree until you've found the parent,
// or you can "climb" up no further.
while (parentElem !== element && element.parentNode) {
element = element.parentNode;
}
if (element === parentElem) {
// event target is inside parentElem
}
else {
// event target is not a child of parentElem
}
});
相关文章:
- 按类别排序;元素有多个类别(同位素.js)
- 每个元素有多个鼠标悬停事件
- Jquery 当元素有文本时尝试附加到选项选项卡
- 如何在使用 javascript 声明 var 之前检查元素有或没有
- 如果没有列表元素有子元素,则删除父元素
- 将元素添加到窗口的文档而不是创建它的元素有什么害处吗?
- JQuery:如何找出一个元素有多少个子元素
- html5视频元素有任何错误?它不会在几个小时后继续播放内容
- 如果TABLE元素有边框(IE与Chrome),则偏移量不同
- 若元素有两个特定的类,那个么禁用按钮
- 如何为特定元素有条件地切换类
- 如何检测元素外部的点击,但该元素有子元素
- 过滤掉不包含搜索字符串的元素[有解决方案,寻求改进]
- 如何找出哪个GWT元素有焦点
- 当一个li元素有特定的类时,重新加载特定的iframe
- 如果元素有子元素html元素
- 我如何得到n-2和n+3个元素有当前索引和最大项
- 如果父元素有边框,当鼠标同时退出父元素和子元素时,如何避免来自父元素的鼠标悬停事件
- 定义一个类's .click - Before元素有这个类
- 确定事件目标是否是已知元素的子元素的最有希望的方法是什么?