普通的Javascript:event.target:获取下一个同级项和第一个Child

use*_*843 7 html javascript css

我有一个HTML表,并为每一行设置了事件侦听器:

var greyHeadings = document.querySelectorAll(".grey");

console.log(greyHeadings);

greyHeadings.forEach(function(greyHeading){
  greyHeading.addEventListener('click', function(e){
    displayDescription(e, greyHeading);
  });
});
Run Code Online (Sandbox Code Playgroud)

称为(displayDescription)的函数如下:

function displayDescription(e, greyHeading){
  var desc = e.target.parentNode.nextSibling.firstChild;
  console.log(desc);
}
Run Code Online (Sandbox Code Playgroud)

它确实为我提供了正确的目标,但似乎nextSibiling.firstChild不起作用。我需要到达下一行(因此,同级),并找到第一个td(因此,第一个Child),以便我可以向其中添加一个active类,以防万一。

我还创建了一个jsfiddle:https ://jsfiddle.net/7vpzLfke/

我是一个初学者,因此非常感谢您提供更详细的解释!

Kom*_*nos 6

您将必须使用nextElementSibling而不是nextSibling,因为nextElementSibling总是返回HTML元素。在这里更多