files/en-us/web/api/commandevent/source/index.md
{{APIRef("Invoker Commands API")}}
The source read-only property of the {{domxref("CommandEvent")}} interface returns an {{domxref("EventTarget")}} representing the control that invoked the given command.
An {{domxref("EventTarget")}} object. Usually an {{domxref("HTMLButtonElement")}}.
In the following simple example we've set up an event listener to add a temporary class to the button element upon a CommandEvent:
document.body.addEventListener(
"command",
(event) => {
const theButton = event.source;
theButton.classList.add("just-pressed");
setTimeout(() => {
theButton.classList.remove("just-pressed");
}, 1000);
},
{ capture: true },
);
{{Specifications}}
{{Compat}}