eventetListener 函数中的参数是什么?

问题描述

eventListener 函数中的参数是什么? addItem 中的参数 (e) 是做什么的?

let form = document.getElementById("addForm")
form.addEventListener("submit",addItem);

// Add item
function addItem(e) {

  e.preventDefault()
  console.log(e)

  // Get input value

  let newItem = document.getElementById("item").value

  // Create new li
  let newLI = document.createElement("li")
  // Add class

  newLI.className = "list-group-item"

  // Add text node with input

  newLI.textContent = newItem

  //Delete button

  let button = document.createElement("button")
  button.className = "btn btn-danger btn-sm float-right delete"
  button.textContent = "X"
  newLI.appendChild(button)

  itemList.appendChild(newLI)
  document.getElementById("item").value = ""
}

解决方法

any documentation for addEventListener

回调函数本身与handleEvent()方法有相同的参数和返回值;也就是说,回调接受一个参数:一个基于 Event 的对象,描述已发生的事件,它不返回任何内容。

对于Event

Event 接口表示在 DOM 中发生的事件。

用户操作可以触发事件,例如点击鼠标 按钮或敲击键盘,或由 API 生成以表示 异步任务的进度。也可以触发 以编程方式,例如通过调用 HTMLElement.click() 方法 一个元素,或者通过定义事件,然后将其发送到指定的 目标使用 EventTarget.dispatchEvent()。

事件的类型很多,其中一些使用其他接口 基于主事件界面。事件本身包含 所有事件共有的属性和方法。