在点击链接的DOM中查找"位置"

haa*_*gel 6 jquery

我有一个页面,其中包含一个名为"myLinkClass"的类的链接.这些链接可以驻留在两个DOM结构之一中:

<div class="divClassA">
    <a class="myLinkClass" ...
</div>
Run Code Online (Sandbox Code Playgroud)

要么

<div class="divClassB">
    <a class="myLinkClass" ...
</div>
Run Code Online (Sandbox Code Playgroud)

我将带有类的链接的click事件与jQuery挂钩到事件处理程序:

$(document).ready(function () {
    $('.myLinkClass').bind('click', function (event) {
        //...
    });
});
Run Code Online (Sandbox Code Playgroud)

如何确定点击的链接是否在divClassA或divClassB中?

请注意,虽然上面示例中的链接是div的子节点,但情况可能并非如此.此外,divClassA和divClassB可能都有任意数量(不只是每个中的一个).

Jam*_*ice 3

您可以检查单击的元素是否具有带有 的祖先divClassA。如果没有,您应该能够假设它位于divClassB

$('.myLinkClass').bind('click', function (event) {
    if($(this).closest(".divClassA").length) {
        //Inside divClassA
    }
    else {
        //Not inside divClassA!
    }
});
Run Code Online (Sandbox Code Playgroud)

这是上述内容的一个工作示例。