gpt4 book ai didi

javascript - typescript : Property 'data' dose not exist on type HTMLElement

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

我尝试获取所有在 typescript 中具有类名的元素,并且需要检查每个元素的数据属性,这就是我到目前为止所得到的:

let getTopElements :NodeListOf<HTMLElement>  = document.querySelectorAll('.timeline-row');
var newArr: HTMLElement[] = Array.prototype.slice.call(getTopElements);

if (getTopElements){
for (let element of newArr){
if (element.data('options') && element.data('options').type === 'TOP') {
this.player.currentTime(element.data('options').end).pause();
}
}
}

但是在我的 if 条件行中,我在数据上收到此错误 HTMLElement 类型上不存在属性“data”

我做错了吗?

最佳答案

因为data()是jQuery中获取数据属性的方法。您应该使用dataset属性来修改和读取数据属性。另请记住,您只能在数据属性中存储字符串值:

 const data = element.dataset;
data.optionsType = 'TOP';
if (data.optionsType === 'TOP') {
this.player.currentTime(data.optionsEnd).pause();
}

另一种选择是使用 getAttribute('data-*') 获取值或 setAttribute('data-*', value) 设置值.

您可以查看MDN page有关如何正确使用数据属性的教程。

关于javascript - typescript : Property 'data' dose not exist on type HTMLElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48945324/

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