Share via

onresize event

Fires when the size of the object is about to change.


HTML Attribute <element onresize = "handler(event)">
Event Property object.onresize = handler;
attachEvent Method object.attachEvent("onresize", handler)


Event information

Synchronous No
Bubbles No
Cancelable No


Event handler parameters

  • pEvtObj [in]
    Type: Varies (see Remarks)

Standards information

There are no standards that apply here.


Starting with Windows Internet Explorer 9, the behavior of the HTMLWindowEvents::onresize event varies according to the document mode of the webpage and the registration of the event.

For webpages displayed in IE9 standards mode or later (including interoperable quirks mode), the resize event behaves according to the W3C DOM Level 3 events standards. In earlier versions of the browser (and corresponding documents modes), the resize event is a legacy, proprietary event associated with element document objects.

In practice, this means the following: As a result, the behavior of the resize event depends on two factors: the document mode of the webpage and

As of Internet Explorer 9, the type of the event object passed to a function handling the HTMLWindowEvents::onresize event varies:

  • When the event is fired from the window object, the event object is a standards-based Event object.
  • When the event is fired from an element and the handler was assigned using the HTMLWindowEvents::onresize attribute, the event object is a legacy event object supported by Windows Internet Explorer 8 and earlier versions of Windows Internet Explorer.
  • When the event is fired from an element and the handler was assigned using the IHTMLElement2::attachEvent method, the event object is a legacy event object.
  • For pages displayed in legacy document modes (IE8 Standards mode and earlier), the event object is a legacy event object..
  • When the event is fired in the context of a Windows app using JavaScript, the event object is a standards based Event object.

For best results, we recommend using IEventTarget::addEventListener to register your event handlers. This means you'll use the window object, rather than any element object:

window.addEventListener("resize", handler, useCapture); 

The HTMLWindowEvents::onresize event fires for block and inline objects with layout, even if document or CSS (cascading style sheets) property values are changed. Objects have layout when measurements such as the IHTMLRuleStyle::height and IHTMLCurrentStyle::width attributes are set, or when the IHTMLRuleStyle2::position of the object is set. Intrinsic objects, such as button, and windowed objects, such as window and iframe, fire as expected. This event does not fire for files with embedded controls.

Resizing HTML applications also fires the HTMLWindowEvents::onresize event.

To invoke this event, change the height or width of the object.

In Windows 8.1 and later versions, the HTMLWindowEvents::onresize event fires when the window size changes or when one of the following properties changes:

You can use the HTMLWindowEvents::onresize event to listen for changes to the size or position of the current window.

The pEvtObj parameter is required for the following interfaces:

window.onresize events in Windows apps using JavaScript

In Windows apps using JavaScript, the window.onresize event fires when the screen keyboard is shown and when the app's viewport is resized. You can use the window.innerHeight, window.innerWidth, window.pageXOffset, and window.pageYOffset style properties to determine the size and location of the new viewport.