javascript - 了解 window.event 属性及其用法

标签 javascript dom event-handling

我不明白 window.event 或 window.event.srcElement 背后的动机。在什么情况下应该使用它?它在 DOM 中究竟代表什么?

最佳答案

这是什么w3school says关于事件对象:

Events are actions that can be detected by JavaScript, and the event object gives information about the event that has occurred.

Sometimes we want to execute a JavaScript when an event occurs, such as when a user clicks a button.

您可以使用以下方式处理事件:

node.onclick = function(e) {
  // here you can handle event. e is an object.
  // It has some usefull properties like target. e.target refers to node
}

但是 Internet Explorer 不会将事件传递给处理程序。相反,您可以使用在事件触发后立即更新的 window.event 对象。所以处理事件的跨浏览器方式:

node.onclick = function(e) {
  e = e || window.event;
  // also there is no e.target property in IE.
  // instead IE uses window.event.srcElement
  var target = e.target || e.srcElement;
  // Now target refers to node. And you can, for example, modify node:
  target.style.backgroundColor = '#f00';
}

关于javascript - 了解 window.event 属性及其用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6926963/

相关文章:

javascript - Chrome 扩展 JS 无法在后退按钮上运行

javascript - 仅当鼠标悬停在该点上时,是否可以在折线图的 Highcharts 中触发工具提示?

javascript - 有没有一个工具可以帮助我理解 jQuery 中的 DOM 遍历?

javascript - Framework7 日历事件通过 AJAX onMonthAdd 加载

apache-flex - Itemrenderer 调度自定义事件

javascript - 使用构造函数添加方法

javascript - 在 jquery.ready global 中使用选择器创建函数

java - 使用保持格式的 DOM 在 XML 中追加元素

java - 如何在 JavaFX 中触发事件而不发生事件

javascript - AJAX/JSON 以及可能的 Jquery 事件