【发布时间】:2021-04-03 14:38:49
【问题描述】:
当我在控制台中运行这两个代码时, eventTarget.click() 返回 undefined 但实际上单击了目标元素,而 eventTarget.dispatchEvent(new Event("click")) 返回 true 但不单击目标元素。我试图理解,但我无法弄清楚为什么会有两种不同的结果。你能解释一下为什么以及它们是如何不同的吗?他们不是都应该点击页面上的元素吗?
document.getElementById("button").click()
和
document.getElementById("button").dispatchEvent(new Event("click"))
【问题讨论】:
-
对于
.click(),您需要有一个HTMLElement,但对于.dispatchEvent(),您需要一个EventTarget。这就是区别。
标签: javascript dom dom-events