javascript - Mootools:遍历 this.getParent() x 次到特定元素

标签 javascript dom mootools traversal

以下标记被夸大以证明问题。

我正在 try catch 已点击链接的主行...碰巧它深埋在一堆其他东西中。

<div class="mainRow">
...
</div>
<div class="mainRow">
    <div>
        <div>
            <div>(x number of layers)
                <div>
                    <div>
                        <div>
                            <div>
                                <div>
                                    <div>
                                        <a class="someLink">click me</a>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>(/x number of layers)
        </div>
    </div>
</div>
<div class="mainRow">
...
</div>

mootools * 中,您可以通过说 .getParent().getParent()...<xTimes>...getParent() 手动获取该父元素等等

有没有办法任意遍历父链 x 次,使其在 div.mainRow 处停止? ?

(编辑:大声笑...对不起大家,我想我在我的问题中错误地写了“jquery”。我问的是 mootools。)

最佳答案

父级遍历在 mootools 中很简单。

在您的情况下,getParent([optional selector]) 方法将尝试匹配任何父节点: http://mootools.net/docs/core/Element/Element#Element:getParent - 所以 .getParent("div.mainrow") 将返回第一个匹配项或 null - 如果未找到。

您有时也可以使用反向组合器选择器,但可能不是在点击事件上。

例如,document.getElements("div.mainRow a.someLink !div.mainRow") 将只返回直接与类“someLink”有链接的 div.mainRow 元素。在某种程度上,就像 .contains() 但您也可以通过附加 返回 a 的父级!分区

关于javascript - Mootools:遍历 this.getParent() x 次到特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9844441/

相关文章:

javascript - 在 Firefox 中单击鼠标时无法选择所有输入元素文本

javascript - 启用/禁用带有虚拟文本区域的 Android 虚拟键盘

Mootools 类 - 对象属性上的 Object.keys()

javascript - 需要帮助使用此函数来使用 javascript 销毁 Canvas 上的项目

javascript - 我是否阅读了搜索查询中的所有推文

jquery - 我是否正确理解 jQuery 委托(delegate)函数?

javascript - 通过 JavaScript 获取 HTML 属性值

JavaScript querySelectorAll() 仍然会发现已被删除的 DOM 元素

JavaScript 嵌套列表 CSS

javascript - 根据弹出窗口 JavaScript 的返回值更改 ASP.NET 面板可见性