What is this in an inline HTML event handler?
The element. The browser wraps an inline handler like onclick="..." in a function with this bound to the element that has the attribute.
Verify This Answer
Cross-check this information using these trusted sources:
More FAQs in How this Works in JavaScript Event Handlers
The element that received the event. When the browser calls a regular function handler, it sets this to the element registered with addEventListener.
The enclosing lexical scope's this, not the element. Arrow functions do not get this from the call. Use event.currentTarget to access the element inside an arrow handler.
Because the method is detached from obj when passed as a reference. The browser calls it with this as the element, not obj. Fix with .bind(obj) or an arrow wrapper () => obj.method().
Still have questions?
Browse all our FAQs or reach out to our support team
