我想检索多个级别的子元素的类名。我正在尝试遵循,但它只给出了后子元素的类名。我究竟做错了什么 ?
<script type="text/javascript">
$(document).ready(function(){
thisP=$("#myParagraph");
getChildStyles(thisP);
//function
function getChildStyles(thisobj) {
var classNames;
var classNames1;
$(thisobj).children().each(function(){
classNames+=$(this).attr('class');
if($(this).children().length>0) {
classNames1+=getChildStyles($(this));
}
classNames+=classNames1;
});
return classNames;
}
});
</script>
还有 HTML,
<ul id="myParagraph" class"mainUL">
<li id="LIOne">ksjdfhsdf</li>
<li id="LITwo">skdjfkdsf<span class"span1Class"><span class="span2class"></span>
</span></li>
<li id="LIThree" class="thirdLIClass">edroiutret</li>
</ul>
您可以使用更简单的方式快速获取名称数组.map() http://api.jquery.com/map/, 像这样:
$(document).ready(function(){
var arrayOfClassNames = $("#myParagraph").find("[class]").map(function() {
return this.className;
}).get();
});
你可以在这里测试一下 http://www.jsfiddle.net/nick_craver/9ewvH/.
如果你想要一个字符串,你可以这样做arrayOfClassNames.join('')
...或者无论如何你想真正使用它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)