var classes = $(this).attr('class').split(' '); // this gets the current element classes
var classes = $(this).parent().attr('class').split(' '); // this gets the parent classes.
上述情况中的父母是ankor。
如果我想获得$(this)的第一个父DIV代码是什么样的?
var classes = $(this).div:parent().attr('class').split(' '); // just a quick try.
* 基本上我想得到$(this)的第一个父DIV的类。
THX
答案 0 :(得分:150)
使用.closest()
遍历DOM树到指定的选择器。
var classes = $(this).parent().closest('div').attr('class').split(' '); // this gets the parent classes.
答案 1 :(得分:38)
使用.closest()
,它获取与给定选择器'div'
匹配的第一个祖先元素:
var classes = $(this).closest('div').attr('class').split(' ');
编辑:
正如@Shef指出的那样,.closest()
将返回当前元素,如果它恰好也是DIV。要考虑到这一点,请先使用.parent()
:
var classes = $(this).parent().closest('div').attr('class').split(' ');
答案 2 :(得分:9)
如果是div,则获取父级。然后就上课了。
var div = $(this).parent("div");
var _class = div.attr("class");
答案 3 :(得分:4)
保持简单!
var classes = $(this).parent('div').attr('class');
答案 4 :(得分:0)
两个最佳选择是
$(this).parent("div:first")
$(this).parent().closest('div')
当然,您可以通过以下方式找到类attr
$(this).parent("div:first").attr("class")
$(this).parent().closest('div').attr("class")