Skip to main content

Class: Window

@ima/core.Window

The Window interface defines various utility API for easier cross-environment usage of various low-level client-side JavaScript APIs available through various global objects.

Hierarchy

Constructors

constructor

new Window()

Methods

bindEventListener

bindEventListener<T, K, S>(eventTarget, event, listener, options?, scope?): void

Registers the provided event listener to be executed when the specified event occurs on the specified event target.

Registering the same event listener for the same event on the same event target with the same useCapture flag value repeatedly has no effect.

Type parameters

NameType
Textends WindowEventTargets
Kextends string | number | symbol
Sany

Parameters

NameTypeDescription
eventTargetTThe event target.
eventKThe name of the event.
listener(event: WindowEventTargetsMap<T>[K]) => voidThe event listener.
options?boolean | EventListenerOptions-
scope?S-

Returns

void

Defined in

packages/core/src/window/Window.ts:311

bindEventListener<T, E, S>(eventTarget, event, listener, options?, scope?): void

Type parameters

NameType
Textends EventTarget
Eextends Event = Event
Sany

Parameters

NameType
eventTargetT
eventstring
listener(event: E) => void
options?boolean | EventListenerOptions
scope?S

Returns

void

Defined in

packages/core/src/window/Window.ts:322


createCustomEvent

createCustomEvent<T>(name, options): CustomEvent<T>

Create new instance of CustomEvent of the specified name and using the provided options.

Type parameters

Name
T

Parameters

NameTypeDescription
namestringCustom event's name (sometimes referred to as the event's type).
optionsCustomEventInit<T>The custom event's options.

Returns

CustomEvent<T>

The created custom event.

See

https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent

Defined in

packages/core/src/window/Window.ts:266


getBody

getBody(): undefined | HTMLElement

Returns the document's body element. The method returns undefined if invoked at the server-side.

Returns

undefined | HTMLElement

The document's body element, or undefined if invoked at the server side.

Defined in

packages/core/src/window/Window.ts:169


getDocument

getDocument(): undefined | Document

Returns the native document object representing any web page loaded in the browser and serves as an entry point into the web page's content which is the DOM tree at the client-side. The method returns undefined if used at the server-side.

Returns

undefined | Document

The document object at the client-side, or undefined at the server-side.

Defined in

packages/core/src/window/Window.ts:95


getDomain

getDomain(): string

Returns the domain of the current document's URL as ${protocol}://${host}.

Returns

string

The current domain.

Defined in

packages/core/src/window/Window.ts:135


getElementById

getElementById(id): null | HTMLElement

Returns the HTML element with the specified id attribute value.

Parameters

NameTypeDescription
idstringThe value of the id attribute to look for.

Returns

null | HTMLElement

The element with the specified id, or null if no such element exists.

Defined in

packages/core/src/window/Window.ts:180


getHistoryState

getHistoryState(): any

Returns the history state.

Returns

any

The current history state

Defined in

packages/core/src/window/Window.ts:189


getHost

getHost(): string

Returns

string

The current host.

Defined in

packages/core/src/window/Window.ts:142


getPath

getPath(): string

Returns the path part of the current URL, including the query string.

Returns

string

The path and query string parts of the current URL.

Defined in

packages/core/src/window/Window.ts:151


getScrollX

getScrollX(): number

Returns the number of pixels the viewport is scrolled horizontally.

Returns

number

The number of pixels the viewport is scrolled horizontally.

Defined in

packages/core/src/window/Window.ts:105


getScrollY

getScrollY(): number

Returns the number of pixels the document is scrolled vertically.

Returns

number

The number of pixels the document is scrolled vertically.

Defined in

packages/core/src/window/Window.ts:115


getUrl

getUrl(): string

Returns

string

The current document's URL.

Defined in

packages/core/src/window/Window.ts:158


getWindow

getWindow(): undefined | Window

Returns the native window object representing the global context at the client-side. The method returns undefined if used at the server-side.

Returns

undefined | Window

The window object at the client-side, or undefined at the server-side.

Defined in

packages/core/src/window/Window.ts:82


hasSessionStorage

hasSessionStorage(): boolean

Returns true if the session storage is supported.

Returns

boolean

true if the session storage is supported.

Defined in

packages/core/src/window/Window.ts:61


isClient

isClient(): boolean

Returns

boolean

true if invoked at the client side.

Defined in

packages/core/src/window/Window.ts:41


isCookieEnabled

isCookieEnabled(): boolean

Returns true if the cookies are set and processed with every HTTP request and response automatically by the environment.

Returns

boolean

true if cookies are handled automatically by the environment.

Defined in

packages/core/src/window/Window.ts:52


pushState

pushState<T>(state, title, url?): void

Pushes a new state to the browser history. The method has no effect if the current browser does not support the history API (IE9).

Type parameters

Name
T

Parameters

NameTypeDescription
stateTA state object associated with the history item, preferably representing the page state.
titlestringThe page title related to the state. Note that this parameter is ignored by some browsers.
url?stringThe new URL at which the state is available.

Returns

void

Defined in

packages/core/src/window/Window.ts:238


querySelector

querySelector<E>(selector): null | E

Returns the first element matching the specified CSS 3 selector.

Type parameters

NameType
Eextends Element = Element

Parameters

NameTypeDescription
selectorstringThe CSS selector.

Returns

null | E

The first element matching the CSS selector or null if no such element exists.

Defined in

packages/core/src/window/Window.ts:200


querySelectorAll

querySelectorAll<E>(selector): NodeListOf<E>

Returns a node list of all elements matching the specified CSS 3 selector.

Type parameters

NameType
Eextends Element = Element

Parameters

NameTypeDescription
selectorstringThe CSS selector.

Returns

NodeListOf<E>

A node list containing all elements matching the specified CSS selector.

Defined in

packages/core/src/window/Window.ts:212


redirect

redirect(url): void

Performs a hard redirect (discarding the current JavaScript state) to the specified URL.

Parameters

NameTypeDescription
urlstringThe URL to which the browser will be redirected.

Returns

void

Defined in

packages/core/src/window/Window.ts:224


replaceState

replaceState<T>(state, title, url?): void

Replaces the current history entry. The method has no effect if the current browser does not support the history API (IE9).

Type parameters

Name
T

Parameters

NameTypeDescription
stateTA state object associated with the history item, preferably representing the page state.
titlestringThe page title related to the state. Note that this parameter is ignored by some browsers.
url?stringThe new URL at which the state is available.

Returns

void

Defined in

packages/core/src/window/Window.ts:252


scrollTo

scrollTo(x, y): void

Scrolls the viewport to the specified location (if possible).

Parameters

NameTypeDescription
xnumberHorizontal scroll offset in pixels.
ynumberVertical scroll offset in pixels.

Returns

void

Defined in

packages/core/src/window/Window.ts:125


setTitle

setTitle(title): void

Sets the new page title of the document.

Parameters

NameTypeDescription
titlestringThe new page title.

Returns

void

Defined in

packages/core/src/window/Window.ts:70


unbindEventListener

unbindEventListener<T, K, S>(eventTarget, event, listener, options?, scope?): void

Deregister the provided event listener, so it will no longer we executed when the specified event occurs on the specified event target.

The method has no effect if the provided event listener is not registered to be executed at the specified event.

Type parameters

NameType
Textends WindowEventTargets
Kextends string | number | symbol
SS

Parameters

NameTypeDescription
eventTargetTThe event target.
eventKThe name of the event.
listener(event: WindowEventTargetsMap<T>[K]) => voidThe event listener.
options?boolean | EventListenerOptionsThe useCapture flag value that was used when the listener was registered, or provide capture option through object options.
scope?S-

Returns

void

Defined in

packages/core/src/window/Window.ts:346

unbindEventListener<T, E, S>(eventTarget, event, listener, options?, scope?): void

Type parameters

NameType
Textends EventTarget
Eextends Event = Event
Sany

Parameters

NameType
eventTargetT
eventstring
listener(event: E) => void
options?boolean | EventListenerOptions
scope?S

Returns

void

Defined in

packages/core/src/window/Window.ts:357