0

我有一个“A”标签,我想知道它的父母有什么课程......所以:

<div class="topone">
    <div class="middleone">
        <a href="#" class="thisone">tag</a>
    </div>
</div>

所以我有“thisone”,但我想知道它上面是否有一个具有“topone”类的 div

...虽然没有 jquery,但不能为此使用 jquery

4

4 回答 4

4

您可以使用该.className属性访问元素的类并.parentNode转到父元素。

var classes = [];
for(var el = document.getElementById('#yourlink'); el; el = el.parentNode) {
    classes.push(el.className);
}

请注意,它classes[0]包含元素本身的类 - 但我确信如果您不希望相应地修改代码,那么您也没有问题。

于 2012-09-06T11:03:28.390 回答
1

您可以使用.parentNodeclassName属性。

这是这样的:

document.getElementById("MyElement").className

提琴手演示

于 2012-09-06T11:03:23.337 回答
0

你可以写这样的东西

给你的标签一个id,比如bottomone

var e = document.getElementById("bottomone").parentNode.className会给你类名作为中间的。

对于上层 div,你可以写

var e = document.getElementById("bottomone").parentNode.parentNode.className
于 2012-09-06T11:17:14.220 回答
0
var element =document.getElementById("topone");      
var liArray = element.childNodes;
      var i=0, item;
    if(element != null)
    {var status=0;
      while (item = liArray[i++]) {
        if (item.nodeType == 1) {
         if(item.className=="thisone"){status=1;}
        }
      }
    if(status==1){alert('it have parent node');}else{alert('it doen`t have parent node');}
    }else{alert('it doesn`t have parent node');}

我已经按照您的要求尝试了我的水平可能对您有帮助吗

于 2012-09-06T11:26:30.360 回答