我需要一个 javascript 函数来获取应用于元素的所有 CSS 类。
我们分别有像 getComputedStyle(element,"") 和 currentStyle() 这样的函数,FF 和 IE。 但是,这些函数只给我应用于元素的 CSS 属性,而不是类。
为了让事情更清楚,请看下面的 DOM 结构。
<html>
<head>
<style>
.dd{
font-weight:bold;
}
.dd span{
border:solid 1px #ABABAB;
}
</style>
</head>
<body>
<div class='dd'>
<span id='span1'>Hi this is a example</span>
</div>
</body>
</html>
现在 javascript 应该是什么,如果我得到元素“span1”,它应该给我所有应用于该元素的类。说输出应该给我“.dd span and .dd”
最佳答案
document.getElementById('span1').className;
并且您可以使用.parentNode
来获取各种父类。
而且,如果你给最顶层的父级一个 position
样式,你可以使用这个:
var topmost = document.getElementById('span1').offsetParent;
for(var x = 0; x < topmost.childNodes.length;x++) {
alert(topmost.childNodes[x].className);
}
//编辑
看起来您正在尝试执行 Firebug 类型的操作。 SO 上的很多用户都尝试过相同的方法。一个好的搜索可能会把你带到你做梦也想不到的事情......muhahahaha......
关于javascript - 是否有可能将所有全局/继承的 css 类应用于一个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074638/