onbeforeactivate event

Fires immediately before the object is set as the IHTMLDocument2::activeElement.


HTML Attribute <element onbeforeactivate = "handler(event)">
Event Property object.onbeforeactivate = handler;
attachEvent Method object.attachEvent("onbeforeactivate", handler)
addEventListener Method object.addEventListener("beforeactivate", handler, useCapture)


Event information

Synchronous No
Bubbles Yes
Cancelable Yes


Event handler parameters

Standards information

There are no standards that apply here.


Each document may have up to one active element. Set the active element with the IHTMLElement3::setActive or IHTMLElement2::focus methods. Using the IHTMLElement3::setActive method has no effect on document focus. Using the IHTMLElement2::focus method on an individual element causes the element to gain focus and become the active element.

Using the IHTMLElement2::focus method on a document that does not have the focus moves the document to the front of the display. Additionally, the document's active element gains focus.

For a given display, only one element has focus at any given time. Striking a key directly affects only the element with focus. Events fired by that keystroke may be scripted to affect other documents and child elements.

With Microsoft Internet Explorer 5.5 and later, focus on a document, and the IHTMLDocument2::activeElement of a document can be managed separately. With Microsoft Internet Explorer 6 and later, use the HTMLLinkElementEvents2::onbeforeactivate event to cancel setting an element as active. Canceling an element's HTMLLinkElementEvents2::onbeforeactivate event has three different behaviors, depending on the action which fired the event.

  • When fired by a user clicking on the element, canceling will force the IHTMLElement2::focus on the parent element and bubble up the chain until it hits a focusable element.
  • When fired by a user tabbing through the document, canceling will force the IHTMLElement2::focus on the next element in the taborder. Shift-tab will force the IHTMLElement2::focus on the previous element in the taborder.
  • When fired programmatically by the IHTMLElement2::focus or the document.IHTMLElement3::setActive methods, canceling will have no effect.

Note  The HTMLLinkElementEvents2::onbeforeactivate event cannot be canceled when fired programmatically.


Change activation from the event.IHTMLEventObj::fromElement to the event.IHTMLEventObj::srcElement.

To invoke this event, do one of the following:

The pEvtObj parameter is required for the following interfaces:

See also