有没有办法从子元素访问父dom对象?

时间:2010-03-04 19:31:36

标签: html css dom

我有一个简单的DOM代码,如下所示

<div>
    <div>
    </div>
</div>

我想单独使用内部div来设置外部div的背景颜色。可能吗?这个问题可能有点疯狂。但我有充分理由要求这样做。我正在开发一个框架,其中有动态生成的HTML代码,我几乎无法控制它。但我可以把内在的元素。在上面的例子中,外部div将来自我生成的代码,我想更改背景颜色,我不能直接做。所以我想通过子div来做。

像childDiv.parent.background-color = blue。

这可行吗?或者类似的实施将是非常有帮助的!

3 个答案:

答案 0 :(得分:3)

this article中解释了如何浏览DOM树。

您可能对parentNode属性感兴趣。

答案 1 :(得分:1)

<div>
    <div>

    </div>
</div>

childDiv.parentNode.style.backgroundColor = “蓝色”;

答案 2 :(得分:0)

相对DOM操作是很棒的东西,非常值得学习。

JavaScript框架使这很容易。例如(使用Prototype):( jQuery有类似的操作)

<div>
<a href="javascript://" onclick="$(this).up().style.backgroundColor='blue'">Make it blue</a>
</div>

然后您可以执行以下操作:

$(this).up(2) - 上升两级

$(this).down()
$(this).next()
$(this).previous

甚至:

$(this).up('.someclass') - 它会在树上找到第一个带有“someClass”类的元素