gpt4 book ai didi

javascript - Typescript:如何检查 eventTarget 中的 tagName?

转载 作者:可可西里 更新时间:2023-11-01 01:58:43 27 4
gpt4 key购买 nike

为什么在这种情况下:

var ele = <HTMLDivElement>document.getElementById("toolbar");
ele.addEventListener("click", function (e) {
if (e.target.tagName === "SPAN") { console.log(e.target.tagName) } }, false);

Visual Studio 向我显示此错误?

Build: Operator '===' cannot be applied to types 'HTMLElement' and 'string'.

Property 'tagName' does not exist on type 'EventTarget'.

当我运行脚本时工作正常。

怎么写才合适?

谢谢。

最佳答案

我会像这样调整代码片段:

var ele = <HTMLDivElement>document.getElementById("toolbar");
ele.addEventListener("click", (ev: MouseEvent) => {
var element = ev.target as HTMLElement;
if (element.tagName === "SPAN") {
console.log(element.tagName)
}
}, false);

event 属性 target 转换为 HTMLElement 将为我们提供底层 元素 的所有正确属性。

检查 the playground

关于javascript - Typescript:如何检查 eventTarget 中的 tagName?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33846813/

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