gpt4 book ai didi

javascript - 如何使用 typescript 获取 addEventListener 中的下一个同级

转载 作者:行者123 更新时间:2023-12-03 03:34:54 25 4
gpt4 key购买 nike

我正在尝试获取被单击元素的下一个同级元素,并且我正在使用 typescript 。这是我的代码。

let jobRowList = document.getElementsByClassName('job-item');
for(let i = 0; i < jobRowList.length; i++) {
// add event listener for each element with class name job-item
let jobRow = jobRowList.item(i);
jobRow.addEventListener('click', (ev) => {
console.log(this.nextSibling); // error
});
}

但是,由于 thisElement 而不是 HTMLElement,因此它没有名为 nextSibling 的属性>,所以 typescript 在这里抛出一个错误。

TS2339: Property 'nextSibling' does not exist on type 'JobListTable'.

有什么方法可以使用 typescript 获取单击元素的 nextSibling 吗?

最佳答案

箭头函数中的

this 并不引用单击的元素。您可以删除箭头函数并使用普通函数 - 但是使用箭头,您可能正在寻找

ev.currentTarget.nextElementSibling
<小时/>
jobRow.addEventListener('click', (ev) => {
console.log(ev.currentTarget.nextElementSibling);
});

关于javascript - 如何使用 typescript 获取 addEventListener 中的下一个同级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45915215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com