jQuery “this”的第一个孩子

我正在尝试将“this”从单击的跨度传递到jQuery函数,然后该函数可以在该单击元素的第一个子元素上执行jQuery。似乎做对了...

<p onclick="toggleSection($(this));"><span class="redClass"></span></p>

Javascript:

function toggleSection(element) {
  element.toggleClass("redClass");
}

如何引用元素的第一个子级?


答案 1

如果要将选择器应用于现有 jQuery 集提供的上下文,请尝试 find() 函数

element.find(">:first-child").toggleClass("redClass");

Jørn Schou-Rode指出,您可能只想找到上下文元素的第一个直接后代,因此子选择器(>)。他还指出,您也可以使用 children() 函数,该函数与 find() 非常相似,但只在层次结构中搜索一个级别(这就是您所需要的全部...):

element.children(":first").toggleClass("redClass");

答案 2

函数:first 选择器一起使用,以获取 以下单个第一个子函数:element

element.children(":first").toggleClass("redClass");