onfocus event
Fires when the object receives focus.
Syntax
HTML Attribute | <element onfocus = "handler(event)"> |
Event Property | object.onfocus = handler; |
attachEvent Method | object.attachEvent("onfocus", handler) |
addEventListener Method | object.addEventListener("focus", handler, useCapture) |
Event information
Synchronous | No |
Bubbles | No |
Cancelable | No |
Event handler parameters
- pEvtObj [in]
Type: IHTMLEventObj
Standards information
- HTML 4.01 Specification, Section 18.2.3
Remarks
Note 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.
When one object loses activation and another object becomes the IHTMLDocument2::activeElement, the HTMLControlElementEvents::onfocus event fires on the object becoming the IHTMLDocument2::activeElement only after the HTMLControlElementEvents::onblur event fires on the object losing activation. Use the focus events to determine when to prepare an object to receive input from the user.
Elements cannot receive focus until the document is finished loading.
For Microsoft Internet Explorer 5.5 and later, focus on a document, and the IHTMLDocument2::activeElement of a document can be managed separately. The synchronous events HTMLControlElementEvents::onactivate and HTMLControlElementEvents::ondeactivate provide better control for managing activation changes.
As of Microsoft Internet Explorer 5, elebrowserments retain focus within the current history when the user returns to a page. To avoid firing the HTMLControlElementEvents::onfocus event unintentionally for an element when the document loads, invoke the IHTMLElement2::focus method on another element.
As of Internet Explorer 5, you can force elements that do not implicitly receive focus to receive focus by adding them to the document tabbing order using the IHTMLElement2::tabIndex attribute.
Sets focus to an object.
To invoke this event, do one of the following:
- Click an object.
- Use keyboard navigation.
- Invoke the IHTMLElement2::focus method.
- Invoke the IHTMLElement3::setActive method.
The pEvtObj parameter is required for the following interfaces:
- HTMLAnchorEvents2
- HTMLAreaEvents2
- HTMLButtonElementEvents2
- HTMLControlElementEvents2
- HTMLDocumentEvents2
- HTMLElementEvents2
- HTMLFormElementEvents2
- HTMLImgEvents2
- HTMLFrameSiteEvents2
- HTMLInputFileElementEvents2
- HTMLInputImageEvents2
- HTMLInputTextElementEvents2
- HTMLLabelEvents2
- HTMLLinkElementEvents2
- HTMLMapEvents2
- HTMLMarqueeElementEvents2
- HTMLObjectElementEvents2
- HTMLOptionButtonElementEvents2
- HTMLScriptEvents2
- HTMLSelectElementEvents2
- HTMLStyleElementEvents2
- HTMLTableEvents2
- HTMLTextContainerEvents2
- HTMLWindowEvents2
- HTMLDocumentEvents4
See also
Reference