javascript - 我不太了解 DOM 标准 Event 对象

标签 javascript jquery

现在我正在尝试通过“Beginning JavaScript 5th Edition”这本书来学习 JavaScript,因为英语不是我的母语,所以有时很难理解。

现在我对所谓的 DOM 标准事件对象 有点困惑。

function handleEvent(e) {
  var target = e.target; 
  var type = e.type;


  if (target.tagName == "P") { 
    if (type == "mouseover") {
      target.className = "underline"; } else if (type == "mouseout") {
      target.className = ""; }
 } 
};

e 是否只是一个参数的约定,我可以给任何我想要的名字?例如 y ?

我可以认为 .target.this 相同吗?

.target 引用我的事件发生的元素,对吧?

最佳答案

e只是参数的约定,event也是。因为 e 拥有所有的 event 属性。尝试在您的控制台中输出 e,您将看到它的所有值。 (顺便说一句,e 只是您将在控制台中看到的一个对象。)

在您的 handleEvent 函数中,只需添加 console.log(e) 即可查看它的所有内容。

e.target 是调用事件的元素。 e.type 是事件类型。如果将 e 切换为 event,事情可能会变得更清楚。

关于javascript - 我不太了解 DOM 标准 Event 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39295703/

相关文章:

asp.net - 在 ASP.NET 中跟踪动态创建的 DOM 元素的方法

javascript - 如何使用javascript对json类型数据进行排序?

javascript - 在 Yii2 中动态添加输入字段

javascript - 无法在 Android 设备上的 Javascript 中获取触摸事件的坐标

jquery - 更改 Bootstrap 表中选定行的颜色

jQuery 回调范围

javascript - Vue中使用SSR时在何处调用 "Vue.use(plugin)"

javascript - 窗口底部的 div,而不是页面

jquery - 如何使 jQuery 函数顺序化

javascript - JQuery 获取 IFrame 中的父 URL :iframe and its parent are in Different domain